{
    "variable": [
        {
            "id": "baseUrl",
            "key": "baseUrl",
            "type": "string",
            "name": "string",
            "value": "https:\/\/aleacademy.aleosapp.com"
        }
    ],
    "info": {
        "name": "AleosApp",
        "_postman_id": "358e74c2-33bf-435d-b1ca-86eaef58a17f",
        "description": "",
        "schema": "https:\/\/schema.getpostman.com\/json\/collection\/v2.1.0\/collection.json"
    },
    "item": [
        {
            "name": "Authorization",
            "description": "",
            "item": [
                {
                    "name": "Log in and issue a token",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/login",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/login"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"login\":\"user@example.com\",\"password\":\"secret-password\"}"
                        },
                        "description": "Authenticate a user by email or username and return an access token along with\nthe user's profile, associated schools, primary role, and permissions.\n\nNotes:\n- The field \"login\" accepts either an email or a username.\n- The \"permissions\" are derived from the user's role(s). This endpoint returns the primary role's permissions.\n- The user object may include computed attributes like assignment_audit (null for non-players) and stripe_billing_portal_url (typically null unless role is account).\n- Use the returned token as a Bearer token in subsequent requests.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"user\": {\n    \"id\": 123,\n    \"name\": \"Example User\",\n    \"email\": \"user@example.com\",\n    \"user_name\": \"example.user\",\n    \"status\": \"active\",\n    \"user_status_id\": 10,\n    \"assignment_audit\": null,\n    \"stripe_billing_portal_url\": null,\n    \"created_at\": \"2025-01-01T00:00:00.000000Z\",\n    \"updated_at\": \"2025-01-01T00:00:00.000000Z\"\n  },\n  \"profile\": {\n    \"id\": 456,\n    \"user_id\": 123,\n    \"first_name\": \"Example\",\n    \"last_name\": \"User\",\n    \"image_url\": \"https:\/\/cdn.example.com\/profiles\/placeholder.jpg\"\n  },\n  \"schools\": [\n    { \"id\": 1, \"nickname\": \"Main School\" }\n  ],\n  \"role\": \"administrator\",\n  \"permissions\": [\"administrative.dashboard.index\", \"administrative.customer.group.index\"],\n  \"token\": \"<access_token>\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 401,
                            "body": "{\"message\":\"Invalid credentials\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The given data was invalid.\",\"errors\":{\"login\":[\"The login field is required.\"],\"password\":[\"The password field is required.\"]}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Send password reset email",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/password\/forgot",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/password\/forgot"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"email\":\"johndoe@example.com\"}"
                        },
                        "description": "Sends a password reset link to the user's email for the current tenant\/school.\nThis endpoint does not require authentication.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Password reset link sent successfully. Please check your email.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n  \"message\": \"We couldn't find a user with that email address.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\"email\": [\"The email must be a valid email address.\"]}\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Reset password",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/password\/reset",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/password\/reset"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"email\":\"johndoe@example.com\",\"token\":\"abc123\",\"password\":\"newpassword123\",\"password_confirmation\":\"newpassword123\"}"
                        },
                        "description": "Resets the user's password using a valid reset token for the current tenant\/school.\nThis endpoint does not require authentication.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Password reset successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\"message\":\"Invalid token or email.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The given data was invalid.\",\"errors\":{\"email\":[\"The email must be a valid email address.\"],\"password\":[\"The password confirmation does not match.\"]}}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Calendar",
            "description": "",
            "item": [
                {
                    "name": "Calendar - Retrieve Calendar Events",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar",
                            "query": [
                                {
                                    "key": "month",
                                    "value": "march",
                                    "description": "optional The name of the month to filter events. Defaults to the current month if not provided.",
                                    "disabled": false
                                },
                                {
                                    "key": "start_date",
                                    "value": "2025-03-01",
                                    "description": "optional Start date for filtering events (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "end_date",
                                    "value": "2025-03-31",
                                    "description": "optional End date for filtering events (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "player%5B%5D",
                                    "value": "",
                                    "description": "optional One or more player IDs to filter sessions. Must be sent using repeated parameters.",
                                    "disabled": true
                                },
                                {
                                    "key": "group%5B%5D",
                                    "value": "",
                                    "description": "optional One or more group IDs to filter sessions. Must be sent using repeated parameters.",
                                    "disabled": true
                                },
                                {
                                    "key": "coach%5B%5D",
                                    "value": "",
                                    "description": "optional One or more coach IDs to filter sessions. Must be sent using repeated parameters.",
                                    "disabled": true
                                },
                                {
                                    "key": "location%5B%5D",
                                    "value": "",
                                    "description": "optional One or more location IDs to filter sessions. Must be sent using repeated parameters.",
                                    "disabled": true
                                },
                                {
                                    "key": "type",
                                    "value": "session",
                                    "description": "optional The type of event to filter. Must be one of: session, evaluation, event, booking.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar?month=march&start_date=2025-03-01&end_date=2025-03-31&player%5B%5D=&group%5B%5D=&coach%5B%5D=&location%5B%5D=&type=session",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school to retrieve calendar events for."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "This endpoint retrieves all sessions, evaluations, events, and bookings associated with a specific school.\nSessions marked as evaluations (`is_evaluation = true`) are categorized as evaluations in the calendar.\nRequires permission: administrative.calendar.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"calendar\": [\n    {\n      \"id\": 1,\n      \"type\": \"session\",\n      \"session_type\": \"private\",\n      \"name\": \"Elite Training\",\n      \"date\": \"2025-03-01\",\n      \"duration\": 90,\n      \"starting_time\": \"10:00\",\n      \"ending_time\": \"11:30\",\n      \"coach\": \"John Doe\",\n      \"players\": [\n        { \"id\": 12, \"name\": \"Carlos Lopez\" },\n        { \"id\": 14, \"name\": \"Ana Gomez\" }\n      ],\n      \"group\": {\n        \"id\": 3,\n        \"name\": \"Grupo Avanzado\",\n        \"description\": \"Jugadores avanzados mayores de 16\",\n        \"coach_id\": 8,\n        \"school_id\": 1,\n        \"created_at\": \"2025-01-10T14:23:00.000000Z\",\n        \"updated_at\": \"2025-02-15T11:45:00.000000Z\",\n        \"players\": [\n          { \"id\": 21, \"name\": \"Pedro M\u00e1rquez\" },\n          { \"id\": 25, \"name\": \"Laura N\u00fa\u00f1ez\" }\n        ]\n      },\n      \"location\": \"Court 1\",\n      \"evaluation\": null\n    }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Invalid event type\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Invalid start_date format. Use YYYY-MM-DD\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Invalid end_date format. Use YYYY-MM-DD\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Session - Create a New Training Session",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Advanced Training\",\"type\":\"group\",\"is_evaluation\":true,\"date\":\"2025-02-22\",\"starting_time\":\"13:00\",\"duration\":60,\"observation\":\"Strength and agility training.\",\"coach_id\":8,\"group_id\":3,\"players\":[20,21,22],\"location_id\":5,\"school_site_id\":1,\"status\":\"active\",\"repeat_weekly\":true,\"repeat_monthly\":true,\"repeat_times\":4,\"recurring_schedule\":[\"hic\"],\"extra_time_pre\":16,\"extra_time_post\":87,\"extra_time_pre_comment\":\"kfwjxbwuurxplxtaqkb\",\"extra_time_post_comment\":\"yfczdjepwljy\",\"evaluation_template_id\":2,\"min_passing_score\":75,\"items\":[\"et\"]}"
                        },
                        "description": "This endpoint allows an authenticated administrative user to create one or more training sessions\nassociated with a specific school. The school must belong to the authenticated user.\nIf a recurring schedule is provided, multiple sessions will be created.\nRequires permission: administrative.calendar.session.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Sessions created successfully\",\n  \"sessions\": [\n    {\n      \"id\": 1,\n      \"name\": \"Advanced Training\",\n      \"type\": \"group\",\n      \"date\": \"2025-02-22\",\n      \"starting_time\": \"13:00\",\n      \"ending_time\": \"14:00\",\n      \"duration\": 60,\n      \"coach_id\": 8,\n      \"group_id\": 3,\n      \"location_id\": 5,\n      \"status\": \"active\",\n      \"is_evaluation\": true,\n      \"evaluation_id\": 12\n    }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"School not found or unauthorized.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The given data was invalid.\",\"errors\":{\"name\":[\"The name field is required.\"],\"evaluation_template_id\":[\"The evaluation template ID is required when the session is an evaluation.\"],\"min_passing_score\":[\"The minimum passing score is required when the session is an evaluation.\"],\"items\":[\"The items field is required when the session is an evaluation.\"],\"items.0.type\":[\"The type field must be either 'skill' or 'exercise'.\"],\"items.0.id\":[\"The id field is required.\"]}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Session - Get Session Details",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The school's slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The session ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a session with all related information (coach, players, group, location, creator, evaluation, and computed attendances).\nRequires permission: administrative.calendar.session.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Session retrieved successfully\",\n  \"session\": {\n    \"id\": 10,\n    \"name\": \"Elite Training\",\n    \"type\": \"group\",\n    \"is_evaluation\": false,\n    \"date\": \"2025-02-28\",\n    \"starting_time\": \"10:00\",\n    \"ending_time\": \"11:30\",\n    \"duration\": 90,\n    \"extra_time_pre\": 10,\n    \"extra_time_pre_comment\": \"Coach requested extra warm-up time.\",\n    \"extra_time_post\": 15,\n    \"extra_time_post_comment\": \"Strategy review after training.\",\n    \"observation\": \"High-intensity endurance drills.\",\n    \"coach\": {\"id\": 8, \"name\": \"John Doe\"},\n    \"players\": [{\"id\": 20, \"name\": \"Player One\"}],\n    \"group\": {\"id\": 3, \"name\": \"Advanced Juniors\"},\n    \"location\": {\"id\": 5, \"name\": \"Central Court 1\"},\n    \"status\": \"active\",\n    \"creator\": {\"id\": 1, \"name\": \"Admin User\"},\n    \"school\": {\"id\": 2, \"name\": \"Main Academy\"},\n    \"schoolSite\": null,\n    \"evaluation\": {\"id\": 12, \"scores\": []},\n    \"attendances\": [\n      {\"player_id\": 20, \"name\": \"Player One\", \"status\": \"present\", \"excuse_comment\": null, \"group_participant\": true, \"subscription_status\": \"active\", \"subscription_reason\": \"Valid\", \"remaining_sessions\": 3, \"extra_sessions\": 0}\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Session not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Session - Update an Existing Training Session",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The school's slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The session ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Strength Training\",\"type\":\"group\",\"is_evaluation\":true,\"date\":\"2025-03-01\",\"starting_time\":\"10:30\",\"duration\":90,\"extra_time_pre\":10,\"extra_time_post\":15,\"extra_time_pre_comment\":\"Additional warm-up\",\"extra_time_post_comment\":\"Review session\",\"observation\":\"Increased endurance drills\",\"coach_id\":8,\"group_id\":3,\"players\":[20,21,22],\"location_id\":5,\"status\":\"active\"}"
                        },
                        "description": "Update a single session. Recurring sessions are not affected. Ending time is recalculated if starting_time or duration change.\nRequires permission: administrative.calendar.session.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Session updated successfully\",\"session\":{\"id\":10,\"name\":\"Strength Training\",\"type\":\"group\",\"is_evaluation\":false,\"date\":\"2025-03-01\",\"starting_time\":\"10:30\",\"ending_time\":\"12:00\",\"duration\":90,\"extra_time_pre\":10,\"extra_time_pre_comment\":\"Additional warm-up\",\"extra_time_post\":15,\"extra_time_post_comment\":\"Review session\",\"observation\":\"Increased endurance drills\",\"coach\":{\"id\":8,\"name\":\"John Doe\"},\"players\":[{\"id\":20,\"name\":\"Player One\"}],\"group\":{\"id\":3,\"name\":\"Advanced Juniors\"},\"location\":{\"id\":5,\"name\":\"Central Court 1\"},\"status\":\"active\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Session not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Session - Record Attendance for a Session",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions\/:id\/attendance",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions\/:id\/attendance",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The school's slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the session."
                                },
                                {
                                    "id": "session_id",
                                    "key": "session_id",
                                    "value": "10",
                                    "description": "The session ID."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"attendances\":[\"ad\"],\"extra_time_pre\":10,\"extra_time_pre_comment\":\"Player arrived early for warm-up\",\"extra_time_post\":15,\"extra_time_post_comment\":\"Extra drills and feedback\"}"
                        },
                        "description": "Record attendance for a session. Marks status as present\/absent\/excused (with optional comment), and records subscription state.\nOn first attendance submission, the session status is set to completed. Optional extra time fields can also be updated.\nRequires permission: administrative.calendar.session.attendance"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Attendance recorded successfully\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Session not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"Player ID <PLAYER_ID> is not assigned to this session\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The given data was invalid.\",\"errors\":{\"attendances[0].player_id\":[\"The player_id field is required.\"],\"attendances[0].status\":[\"The status field must be 'present', 'absent', or 'excused'.\"],\"attendances[0].subscription_status\":[\"The subscription_status field is required and must be 'active' or 'inactive'.\"]}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluation - List All Evaluations",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/evaluations",
                            "query": [
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Records per page. Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "search",
                                    "value": "advanced",
                                    "description": "optional Global search across all base columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "iste",
                                    "description": "optional Filter conditions (column, operator, value). Supports relation dot-notation (e.g., session.coach.name).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "Column name or relation path.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "contains",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "pending",
                                    "description": "mixed Value to compare. Use an array [min,max] for \"between\".",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "graded_at",
                                    "description": "optional Column to sort by.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction (asc, desc). Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/evaluations?per_page=15&search=advanced&filters[0]=iste&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=contains&filters%5B0%5D%5Bvalue%5D=pending&sort_by=graded_at&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "This endpoint returns a paginated list of evaluations for a given school,\nincluding related sessions, templates, and scores. Supports filtering and sorting.\nRequires permission: administrative.calendar.evaluation.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"evaluations\": [\n    {\n      \"id\": 1,\n      \"status\": \"pending\",\n      \"min_passing_score\": 75,\n      \"graded_at\": null,\n      \"template\": { \"id\": 2, \"nickname\": \"Technical evaluation\" },\n      \"session\": {\n        \"id\": 10,\n        \"date\": \"2025-03-01\",\n        \"name\": \"Advanced evaluation\",\n        \"coach\": { \"id\": 5, \"name\": \"Sample Coach\" },\n        \"group\": { \"id\": 3, \"name\": \"Elite Group\" },\n        \"location\": { \"id\": 2, \"name\": \"Central Court\" }\n      },\n      \"scores\": [\n        {\n          \"player_id\": 20,\n          \"score\": 88,\n          \"percentage\": 50\n        }\n      ]\n    }\n  ],\n  \"metadata\": {\n    \"columns\": [\"id\", \"status\", \"graded_at\", \"min_passing_score\", \"template\", \"session\", \"scores\"],\n    \"defaultColumns\": [\"id\", \"status\", \"template\", \"graded_at\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"School not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluations - Qualify an evaluation in a school.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/evaluations\/:id\/qualify",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/evaluations\/:id\/qualify",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "6",
                                    "description": "The evaluation ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"scores\":[\"aliquam\"]}"
                        },
                        "description": "This endpoint allows an authorized user to grade an evaluation within a specific school.\nIf all scores have been graded, the evaluation status will be updated to \"completed.\"\nRequires permission: administrative.calendar.evaluation.qualify"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Evaluation graded successfully\",\n  \"evaluation\": {\n      \"id\": 6,\n      \"evaluation_template_id\": 1,\n      \"min_passing_score\": 50,\n      \"status\": \"completed\",\n      \"graded_at\": \"2025-03-14T16:30:00.000000Z\",\n      \"created_at\": \"2025-03-14T15:52:31.000000Z\",\n      \"updated_at\": \"2025-03-14T16:30:00.000000Z\",\n      \"scores\": [\n          {\n              \"id\": 61,\n              \"evaluation_id\": 6,\n              \"player_id\": 1689,\n              \"skill_id\": 1,\n              \"exercise_id\": null,\n              \"score\": 85,\n              \"comment\": \"Good performance in the test.\",\n              \"percentage\": \"25.00\",\n              \"measurement_unit_id\": 17,\n              \"zero_percent_score\": 0,\n              \"min_passing\": 1,\n              \"max_passing\": 3,\n              \"order\": 1,\n              \"created_at\": \"2025-03-14T15:52:31.000000Z\",\n              \"updated_at\": \"2025-03-14T16:30:00.000000Z\"\n          }\n      ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Evaluation not found.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The score ID 61 does not belong to the evaluation ID 6.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{\"message\":\"Error recording the grade\",\"error\":\"Error details\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluations - Get evaluation results.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/evaluations\/:id\/results",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/evaluations\/:id\/results",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "6",
                                    "description": "The evaluation ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "This endpoint retrieves the evaluation results for a specific school and evaluation.\nIt calculates each student's final grade based on the evaluation's scoring criteria,\nincluding whether the student passed or failed."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"evaluation_id\": 6,\n  \"min_passing_score\": 50,\n  \"status\": \"completed\",\n  \"results\": [\n      {\n          \"player_id\": 1689,\n          \"final_score\": 78.5,\n          \"passed\": true,\n          \"scores\": [\n              {\n                  \"score_id\": 61,\n                  \"exercise_id\": null,\n                  \"skill_id\": 1,\n                  \"raw_score\": 2,\n                  \"final_score\": 70.0,\n                  \"min_passing\": 1,\n                  \"max_passing\": 3,\n                  \"percentage\": \"25.00\",\n                  \"passed\": true\n              },\n              {\n                  \"score_id\": 62,\n                  \"exercise_id\": null,\n                  \"skill_id\": 3,\n                  \"raw_score\": 80,\n                  \"final_score\": 85.0,\n                  \"min_passing\": 30,\n                  \"max_passing\": 90,\n                  \"percentage\": \"25.00\",\n                  \"passed\": true\n              }\n          ]\n      },\n      {\n          \"player_id\": 1691,\n          \"final_score\": 45.3,\n          \"passed\": false,\n          \"scores\": [\n              {\n                  \"score_id\": 65,\n                  \"exercise_id\": null,\n                  \"skill_id\": 1,\n                  \"raw_score\": 1,\n                  \"final_score\": 30.0,\n                  \"min_passing\": 1,\n                  \"max_passing\": 3,\n                  \"percentage\": \"25.00\",\n                  \"passed\": false\n              },\n              {\n                  \"score_id\": 66,\n                  \"exercise_id\": null,\n                  \"skill_id\": 3,\n                  \"raw_score\": 60,\n                  \"final_score\": 45.0,\n                  \"min_passing\": 30,\n                  \"max_passing\": 90,\n                  \"percentage\": \"25.00\",\n                  \"passed\": false\n              }\n          ]\n      }\n  ],\n  \"general_exercises\": [\n    {\"exercise_id\": 1, \"average_score\": 80.25, \"passing_rate\": 66.67}\n  ],\n  \"general_skills\": [\n    {\"skill_id\": 3, \"average_score\": 85.0, \"passing_rate\": 75.0}\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Evaluation not found.\"}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Customer",
            "description": "",
            "item": [
                {
                    "name": "Customers - Search within a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/search",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table view). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional If true, returns only archived customers. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[]",
                                    "value": "",
                                    "description": "optional Filters array. Supports relation dot-notation in column and a global text search via filters[search].",
                                    "disabled": true
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "doe",
                                    "description": "optional Global text search across base profile columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "language",
                                    "description": "Column to filter by (base or relation).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Operator: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "en",
                                    "description": "mixed Value to compare. For between, send [min,max].",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "first_name",
                                    "description": "optional Base column to sort by (relations not supported).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/search?view=select&per_page=15&only_archived=1&filters[]=&filters%5Bsearch%5D=doe&filters%5B0%5D%5Bcolumn%5D=language&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=en&sort_by=first_name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Search customers (users with roles lead, account, or player) associated with the given school. Supports filtering, global search, and sorting.\nRequires permission: administrative.customer.search"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"customers\": {\n    \"data\": [\n      {\n        \"user_id\": 101,\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"gender\": \"male\",\n        \"language\": \"en\",\n        \"role\": \"account\"\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 42\n  },\n  \"metadata\": {\n    \"columns\": [\"user_id\",\"first_name\",\"last_name\",\"gender\",\"language\",\"role\"],\n    \"defaultColumns\": [\"user_id\",\"first_name\",\"last_name\",\"gender\",\"language\",\"role\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"customers\": [{\"user_id\": 101, \"first_name\": \"John\", \"last_name\": \"Doe\"}]}\nWhen view=select, returns a flat list of customers with minimal fields.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - List leads in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/lead",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (only for table). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional If true, returns only archived leads. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "cumque",
                                    "description": "optional Filter set. Supports relation dot-notation in column (e.g. user.userStatus.name) and global search via filters[search].",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "emma",
                                    "description": "optional Global search over base profile columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "language",
                                    "description": "Column to filter (base or relation).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Operator: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "en",
                                    "description": "mixed Value to compare. Use [min,max] for between.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "first_name",
                                    "description": "optional Base column to sort by (relations not supported).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/lead?view=select&per_page=15&only_archived=1&filters[0]=cumque&filters%5Bsearch%5D=emma&filters%5B0%5D%5Bcolumn%5D=language&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=en&sort_by=first_name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the leads (users with role \"lead\") associated with the given school. Supports filters, sort, pagination, and a compact select view.\nRequires permission: administrative.customer.lead.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"leads\": {\n    \"data\": [\n      {\n        \"user_id\": 15,\n        \"first_name\": \"Emma\",\n        \"last_name\": \"Johnson\",\n        \"gender\": \"female\",\n        \"language\": \"en\",\n        \"lead_status\": \"active\"\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"user_id\",\"first_name\",\"last_name\",\"gender\",\"language\",\"lead_status\"],\n    \"defaultColumns\": [\"user_id\",\"first_name\",\"last_name\",\"lead_status\",\"gender\",\"language\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"leads\": [{\"user_id\": 15, \"first_name\": \"Emma\", \"last_name\": \"Johnson\", \"lead_status\": \"active\"}]}\nWhen view=select, a flat list of leads is returned.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - Create or update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/lead",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/lead",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "id",
                                    "value": "10",
                                    "type": "text",
                                    "description": "optional Lead user ID to update. If omitted, a new lead is created."
                                },
                                {
                                    "key": "first_name",
                                    "value": "Emma",
                                    "type": "text",
                                    "description": "First name."
                                },
                                {
                                    "key": "last_name",
                                    "value": "Johnson",
                                    "type": "text",
                                    "description": "Last name."
                                },
                                {
                                    "key": "gender",
                                    "value": "female",
                                    "type": "text",
                                    "description": "optional One of: male, female, other."
                                },
                                {
                                    "key": "date_birth",
                                    "value": "2010-06-01",
                                    "type": "text",
                                    "description": "optional Date of birth (YYYY-MM-DD)."
                                },
                                {
                                    "key": "id_number",
                                    "value": "123456789",
                                    "type": "text",
                                    "description": "optional Identification number."
                                },
                                {
                                    "key": "language",
                                    "value": "en",
                                    "type": "text",
                                    "description": "optional Language code."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "1",
                                    "type": "text",
                                    "description": "optional Numeric country phone code."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "+17865551234",
                                    "type": "text",
                                    "description": "optional Primary phone number."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "yhnbisb",
                                    "type": "text",
                                    "description": "Must not be greater than 40 characters."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "lead@example.com",
                                    "type": "text",
                                    "description": "optional Email address (also used as user email)."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "stanton.klein@example.org",
                                    "type": "text",
                                    "description": "Must be a valid email address. Must not be greater than 120 characters."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "United States",
                                    "type": "text",
                                    "description": "optional Country."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "Florida",
                                    "type": "text",
                                    "description": "optional State\/Region."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "Miami",
                                    "type": "text",
                                    "description": "optional City."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "1234 Ocean Dr",
                                    "type": "text",
                                    "description": "optional Address."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "33101",
                                    "type": "text",
                                    "description": "optional Zip code."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "medical_details",
                                    "value": "iqkcba",
                                    "type": "text",
                                    "description": "This field is required when <code>has_medical_conditions<\/code> is <code>1<\/code>. Must not be greater than 1000 characters."
                                },
                                {
                                    "key": "schedules[0][day_of_week]",
                                    "value": "monday",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][start_time]",
                                    "value": "04:17",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][end_time]",
                                    "value": "2109-08-04",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "custom_fields",
                                    "value": "[{\"slug\":\"whatsapp\",\"value\":\"+15550001111\"}]",
                                    "type": "text",
                                    "description": "optional Custom fields as objects with slug and value. When sending multipart\/form-data, provide as a JSON string."
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Create a new lead or update an existing one in the given school. If a new user is created, a unique user_name is generated and a password is set.\nThe user is assigned the \"lead\" role and associated with the school. Supports profile image upload, custom fields, and optional weekly schedules.\nRequires permission: administrative.customer.lead.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Profile updated successfully\",\"lead\":{}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\":\"Profile created successfully\",\"lead\":{}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"This email is already registered for another user.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/lead\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/lead\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Lead user ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a specific lead with its profile and associated schools, restricted to the given school.\nRequires permission: administrative.customer.lead.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"lead\": {}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"lead not found or not associated with this school\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/lead\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/lead\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Lead user ID to update."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "first_name",
                                    "value": "vprulxuzcttchutgqkhhj",
                                    "type": "text",
                                    "description": "Must not be greater than 255 characters."
                                },
                                {
                                    "key": "last_name",
                                    "value": "nkjsalue",
                                    "type": "text",
                                    "description": "Must not be greater than 255 characters."
                                },
                                {
                                    "key": "gender",
                                    "value": "other",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "date_birth",
                                    "value": "2026-02-26T04:17:45",
                                    "type": "text",
                                    "description": "Must be a valid date."
                                },
                                {
                                    "key": "id_number",
                                    "value": "dicta",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "language",
                                    "value": "nuahdsedv",
                                    "type": "text",
                                    "description": "Must not be greater than 10 characters."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "2730",
                                    "type": "text",
                                    "description": "This field is required when <code>billing_phone_number<\/code> is present. Must match the regex \/^\\d{1,4}$\/."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "onddmlmyiyozlkwxa",
                                    "type": "text",
                                    "description": "Must not be greater than 40 characters."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "ejtdmfb",
                                    "type": "text",
                                    "description": "Must not be greater than 40 characters."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "isadore.koss@example.com",
                                    "type": "text",
                                    "description": "Must be a valid email address."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "odooley@example.net",
                                    "type": "text",
                                    "description": "Must be a valid email address. Must not be greater than 120 characters."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "sfqyhdtggzwlxuxdeaqz",
                                    "type": "text",
                                    "description": "Must not be greater than 100 characters."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "hfponakptfkmplgbk",
                                    "type": "text",
                                    "description": "Must not be greater than 100 characters."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "pvbzohacqnmjv",
                                    "type": "text",
                                    "description": "Must not be greater than 80 characters."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "evfcmuijymmmxbdjshfrkrh",
                                    "type": "text",
                                    "description": "Must not be greater than 255 characters."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "nogqiqc",
                                    "type": "text",
                                    "description": "Must not be greater than 20 characters."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "medical_details",
                                    "value": "dzykf",
                                    "type": "text",
                                    "description": "This field is required when <code>has_medical_conditions<\/code> is <code>1<\/code>. Must not be greater than 1000 characters."
                                },
                                {
                                    "key": "schedules[0][day_of_week]",
                                    "value": "monday",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][start_time]",
                                    "value": "04:17",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][end_time]",
                                    "value": "2114-03-18",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                },
                                {
                                    "key": "_method",
                                    "value": "PUT",
                                    "type": "text"
                                }
                            ]
                        },
                        "description": "Updates a lead. Uses the same validation as store and accepts partial updates.\nRequires permission: administrative.customer.lead.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Profile updated successfully\",\"lead\":{}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"lead not found or unauthorized.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"This email is already registered for another user.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/lead\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/lead\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Lead user ID to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive (soft-deactivate) a lead in the given school. Record is not deleted. Also archives the profile if present.\nRequires permission: administrative.customer.lead.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Lead archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"lead not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Accounts - List accounts in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/accounts",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Modo de respuesta. Uno de: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Elementos por p\u00e1gina (solo table). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional Si es true, retorna solo cuentas archivadas. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "eveniet",
                                    "description": "optional Conjunto de filtros. Soporta notaci\u00f3n de relaci\u00f3n con punto en column (p.ej. user.userStatus.name) y b\u00fasqueda global v\u00eda filters[search].",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "doe",
                                    "description": "optional B\u00fasqueda global sobre columnas base del perfil.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "language",
                                    "description": "Columna a filtrar (base o relaci\u00f3n).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Operador: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "en",
                                    "description": "mixed Valor a comparar. Para between env\u00eda [min,max].",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "first_name",
                                    "description": "optional Columna base para ordenar (relaciones no soportadas).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Direcci\u00f3n de orden. Uno de: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/accounts?view=select&per_page=15&only_archived=1&filters[0]=eveniet&filters%5Bsearch%5D=doe&filters%5B0%5D%5Bcolumn%5D=language&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=en&sort_by=first_name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "Slug de la escuela."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Obtiene las cuentas (usuarios con rol \"account\") asociadas a la escuela dada. Soporta filtros, b\u00fasqueda y ordenamiento.\nRequiere permiso: administrative.customer.account.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"accounts\": {\n    \"data\": [\n      {\n        \"user_id\": 101,\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\",\n        \"gender\": \"male\",\n        \"language\": \"en\",\n        \"account_status\": \"active\"\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 42\n  },\n  \"metadata\": {\n    \"columns\": [\"user_id\",\"first_name\",\"last_name\",\"gender\",\"language\",\"account_status\"],\n    \"defaultColumns\": [\"user_id\",\"first_name\",\"last_name\",\"account_status\",\"gender\",\"language\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"accounts\": [{\"user_id\": 101, \"first_name\": \"John\", \"last_name\": \"Doe\", \"account_status\": \"active\"}]}\nCuando view=select, retorna una lista plana de cuentas.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Accounts - Create or update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/accounts",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/accounts",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "id",
                                    "value": "10",
                                    "type": "text",
                                    "description": "optional Account user ID to update. If omitted, a new account is created."
                                },
                                {
                                    "key": "first_name",
                                    "value": "John",
                                    "type": "text",
                                    "description": "optional First name."
                                },
                                {
                                    "key": "last_name",
                                    "value": "Doe",
                                    "type": "text",
                                    "description": "optional Last name."
                                },
                                {
                                    "key": "gender",
                                    "value": "male",
                                    "type": "text",
                                    "description": "optional One of: male, female, other."
                                },
                                {
                                    "key": "date_birth",
                                    "value": "1985-09-15",
                                    "type": "text",
                                    "description": "optional Date of birth (YYYY-MM-DD)."
                                },
                                {
                                    "key": "id_number",
                                    "value": "A-1234567",
                                    "type": "text",
                                    "description": "optional Identification number."
                                },
                                {
                                    "key": "language",
                                    "value": "en",
                                    "type": "text",
                                    "description": "optional Language code."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "1",
                                    "type": "text",
                                    "description": "optional Numeric country phone code; required with billing_phone_number."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "+17865551234",
                                    "type": "text",
                                    "description": "optional Billing phone. E.164 format will be derived using phone_code."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "+17865550000",
                                    "type": "text",
                                    "description": "optional Secondary phone."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "account@example.com",
                                    "type": "text",
                                    "description": "optional Billing email (also used as the account email)."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "secondary@example.com",
                                    "type": "text",
                                    "description": "optional Secondary email."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "Argentina",
                                    "type": "text",
                                    "description": "optional Billing country."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "Buenos Aires",
                                    "type": "text",
                                    "description": "optional Billing state\/region."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "CABA",
                                    "type": "text",
                                    "description": "optional Billing city."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "1234 Corrientes Ave",
                                    "type": "text",
                                    "description": "optional Billing address."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "C1043AAU",
                                    "type": "text",
                                    "description": "optional Billing ZIP\/postal code."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "1",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "medical_details",
                                    "value": "ndkcjlbqjhc",
                                    "type": "text",
                                    "description": "This field is required when <code>has_medical_conditions<\/code> is <code>1<\/code>. Must not be greater than 1000 characters."
                                },
                                {
                                    "key": "schedules[0][day_of_week]",
                                    "value": "sunday",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][start_time]",
                                    "value": "04:17",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][end_time]",
                                    "value": "2120-11-07",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "custom_fields",
                                    "value": "[{\"slug\":\"whatsapp\",\"value\":\"+15550001111\"}]",
                                    "type": "text",
                                    "description": "optional Custom fields as objects with slug and value. When sending as multipart\/form-data, provide as JSON string."
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Create a new account or update an existing one for the given school. If a new user is created,\na unique user_name is generated and an email with the initial password is sent to the provided billing_email.\nAllows uploading a profile image, saving custom fields, and optional weekly schedules.\nRequires permission: administrative.customer.account.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Profile updated successfully\", \"account\": {\"id\": 10, \"user_name\": \"john.doe1\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Profile created successfully\",\n  \"account\": {\n    \"id\": 10,\n    \"user_name\": \"john.doe1\",\n    \"name\": \"John Doe\",\n    \"email\": \"account@example.com\",\n    \"profile\": {\n      \"user_id\": 10,\n      \"first_name\": \"John\",\n      \"last_name\": \"Doe\",\n      \"gender\": \"male\",\n      \"date_birth\": \"1985-09-15\",\n      \"language\": \"en\",\n      \"billing_phone_number\": \"+17865551234\",\n      \"billing_country\": \"Argentina\",\n      \"billing_email\": \"account@example.com\",\n      \"billing_state\": \"Buenos Aires\",\n      \"billing_address\": \"1234 Corrientes Ave\",\n      \"billing_zip_code\": \"C1043AAU\",\n      \"image_url\": \"https:\/\/example-bucket\/profile123.jpg\",\n      \"custom_fields\": [{\"slug\": \"whatsapp\", \"value\": \"+15550001111\"}]\n    },\n    \"schools\": [{\"id\": 5, \"nickname\": \"Elite Academy\"}]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"This email is already registered for another user.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Accounts - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/accounts\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/accounts\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Account user ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a specific account with its profile and associated schools, restricted to the given school.\nRequires permission: administrative.customer.account.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"account\": {\n    \"id\": 10,\n    \"user_name\": \"john.doe1\",\n    \"name\": \"John Doe\",\n    \"email\": \"account@example.com\",\n    \"profile\": {\n      \"user_id\": 10,\n      \"first_name\": \"John\",\n      \"last_name\": \"Doe\",\n      \"gender\": \"male\",\n      \"date_birth\": \"1985-09-15\",\n      \"language\": \"en\",\n      \"billing_phone_number\": \"+17865551234\",\n      \"billing_country\": \"Argentina\",\n      \"billing_email\": \"account@example.com\",\n      \"billing_state\": \"Buenos Aires\",\n      \"billing_address\": \"1234 Corrientes Ave\",\n      \"billing_zip_code\": \"C1043AAU\",\n      \"image_url\": \"https:\/\/example-bucket\/profile123.jpg\",\n      \"custom_fields\": [{\"slug\": \"whatsapp\", \"value\": \"+15550001111\"}]\n    },\n    \"schools\": [{\"id\": 5, \"nickname\": \"Elite Academy\"}]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"account not found or not associated with this school\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Accounts - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/accounts\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/accounts\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Account user ID to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive (soft-deactivate) an account in the given school. The record is not deleted.\nRequires permission: administrative.customer.account.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Account archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"account not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Accounts - Get my players in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/accounts\/my\/players",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/accounts\/my\/players",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the players (children) that belong to the authenticated account within the given school.\nRequires permission: customer.account.players"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  {\n    \"id\": 33,\n    \"name\": \"Player One\",\n    \"profile\": {\n      \"date_birth\": \"2015-06-01\",\n      \"gender\": \"female\",\n      \"experience_level\": null,\n      \"has_medical_conditions\": false,\n      \"medical_details\": null\n    }\n  }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Players - List players in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/players",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (only for table). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional If true, returns only archived players. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "group_id",
                                    "value": "5",
                                    "description": "optional Filter players by group id.",
                                    "disabled": false
                                },
                                {
                                    "key": "parent_id",
                                    "value": "3",
                                    "description": "optional Filter players by account (parent) id.",
                                    "disabled": false
                                },
                                {
                                    "key": "validate_subscriptions",
                                    "value": "1",
                                    "description": "optional If true, adds a validation_subscription object per player.",
                                    "disabled": false
                                },
                                {
                                    "key": "school_site_id",
                                    "value": "1",
                                    "description": "if validate_subscriptions=true. School site id used to validate subscriptions.",
                                    "disabled": false
                                },
                                {
                                    "key": "type",
                                    "value": "private",
                                    "description": "if validate_subscriptions=true. One of: private, semi-private, group.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "voluptas",
                                    "description": "optional Filter set. Supports relation dot-notation in column and global search via filters[search].",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "lucas",
                                    "description": "optional Global search over base profile columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "language",
                                    "description": "Column to filter (base or relation).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Operator: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "en",
                                    "description": "mixed Value to compare. Use [min,max] for between.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "first_name",
                                    "description": "optional Base column to sort by (relations not supported).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/players?view=select&per_page=15&only_archived=1&group_id=5&parent_id=3&validate_subscriptions=1&school_site_id=1&type=private&filters[0]=voluptas&filters%5Bsearch%5D=lucas&filters%5B0%5D%5Bcolumn%5D=language&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=en&sort_by=first_name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the players (users with role \"player\") associated with the given school. Supports filters, sort, pagination, optional group\/account filters, and optional subscription validation.\nRequires permission: administrative.customer.player.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"players\": {\n    \"data\": [\n      {\n        \"user_id\": 15,\n        \"first_name\": \"Lucas\",\n        \"last_name\": \"Alvarez\",\n        \"gender\": \"male\",\n        \"language\": \"en\",\n        \"player_status\": \"active\"\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"user_id\",\"first_name\",\"last_name\",\"gender\",\"language\",\"player_status\"],\n    \"defaultColumns\": [\"user_id\",\"first_name\",\"last_name\",\"player_status\",\"gender\",\"language\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"players\": [{\"id\": 42, \"user_id\": 101, \"first_name\": \"Lucas\", \"last_name\": \"Alvarez\", \"player_status\": \"active\"}]}\nWhen view=select, returns a flat list of players.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\"message\": \"Invalid group_id\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Players - Create or update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/players",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/players",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "id",
                                    "value": "42",
                                    "type": "text",
                                    "description": "optional Player user id to update. If omitted, a new player is created."
                                },
                                {
                                    "key": "first_name",
                                    "value": "Lucas",
                                    "type": "text",
                                    "description": "optional Player's first name."
                                },
                                {
                                    "key": "last_name",
                                    "value": "Alvarez",
                                    "type": "text",
                                    "description": "optional Player's last name."
                                },
                                {
                                    "key": "gender",
                                    "value": "male",
                                    "type": "text",
                                    "description": "optional One of: male, female, other."
                                },
                                {
                                    "key": "date_birth",
                                    "value": "2012-05-14",
                                    "type": "text",
                                    "description": "optional Date of birth (YYYY-MM-DD)."
                                },
                                {
                                    "key": "id_number",
                                    "value": "1234567890",
                                    "type": "text",
                                    "description": "optional Identification\/document number."
                                },
                                {
                                    "key": "language",
                                    "value": "en",
                                    "type": "text",
                                    "description": "optional Preferred language code. Max 10 chars."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "57",
                                    "type": "text",
                                    "description": "optional Required when billing_phone_number is present. Digits only (1\u20134)."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "+573001234567",
                                    "type": "text",
                                    "description": "optional Primary phone. Will be normalized to E.164 when phone_code is provided."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "+573119876543",
                                    "type": "text",
                                    "description": "optional Secondary phone. Will be normalized to E.164 when phone_code is provided."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "billing@family.com",
                                    "type": "text",
                                    "description": "optional Billing email address (also used as player's email if provided)."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "mother@example.com",
                                    "type": "text",
                                    "description": "optional Secondary contact email."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "Colombia",
                                    "type": "text",
                                    "description": "optional Billing country."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "Valle del Cauca",
                                    "type": "text",
                                    "description": "optional Billing state\/region."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "Cali",
                                    "type": "text",
                                    "description": "optional Billing city."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "Calle 5 #10-20",
                                    "type": "text",
                                    "description": "optional Billing address."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "760001",
                                    "type": "text",
                                    "description": "optional Billing zip\/postal code."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "1",
                                    "type": "text",
                                    "description": "optional Whether the player has medical conditions."
                                },
                                {
                                    "key": "medical_details",
                                    "value": "Asthma (uses inhaler).",
                                    "type": "text",
                                    "description": "optional Required if has_medical_conditions is true."
                                },
                                {
                                    "key": "experience_level",
                                    "value": "intermediate",
                                    "type": "text",
                                    "description": "optional Free-form field for experience level."
                                },
                                {
                                    "key": "schedules[0][day_of_week]",
                                    "value": "friday",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][start_time]",
                                    "value": "04:17",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][end_time]",
                                    "value": "2032-10-13",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "parent_id",
                                    "value": "10",
                                    "type": "text",
                                    "description": "Account owner user id. Must belong to this school."
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Create or update a Player profile (role \"player\") linked only to the school in the URL. The parent_id must be an Account belonging to this same school.\nAssigns the \"player\" role if missing and associates the player only to this school.\nRequires permission: administrative.customer.player.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Player updated successfully\", \"player\": {\"id\": 42, \"name\": \"Lucas Alvarez\"}}",
                            "name": "updated"
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\": \"Player created successfully\", \"player\": {\"id\": 42, \"name\": \"Lucas Alvarez\"}}",
                            "name": "created"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"This email is already registered for another player under this account.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"This email is already registered for another user.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Players - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/players\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/players\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Player user ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a specific player with profile and associated schools, restricted to the given school.\nRequires permission: administrative.customer.player.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"player\": {}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"player not found or not associated with this school\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Players - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/players\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/players\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "School slug."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "Player user ID to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive (soft-deactivate) a player for the given school. Record is not deleted. Also archives the profile if present.\nRequires permission: administrative.customer.player.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Player archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Player not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - List groups for a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. \"table\" returns a paginated table payload; \"select\" returns a minimal list. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page for table view. Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional When true, returns only archived\/inactive groups. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[]",
                                    "value": "",
                                    "description": "optional Dynamic filters. Each item includes column, operator, and value. Columns may use relation dot-notation (e.g., coach.name).",
                                    "disabled": true
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "The filter operator. One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "active",
                                    "description": "mixed The comparison value. Use an array for the between operator.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "elite",
                                    "description": "optional Global search applied across searchable columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "name",
                                    "description": "optional Column to sort by (base table columns only).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups?view=select&per_page=15&only_archived=1&filters[]=&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=active&filters%5Bsearch%5D=elite&sort_by=name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school whose groups you want to list."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns training groups belonging to the given school. Supports filtering, sorting, pagination, and a compact \"select\" view."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"groups\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 10,\n        \"name\": \"Elite Training Group\",\n        \"school_id\": 2,\n        \"level_id\": 3,\n        \"school_site_id\": null,\n        \"creator_id\": 5,\n        \"coach_id\": 8,\n        \"starting_time\": \"15:00\",\n        \"duration\": 90,\n        \"coach_work_time\": 60,\n        \"player_capacity\": 12,\n        \"group_type\": \"group\",\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 30\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"name\", \"coach_id\", \"player_capacity\", \"starting_time\", \"duration\", \"players\"],\n    \"defaultColumns\": [\"name\", \"starting_time\", \"duration\", \"player_capacity\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"groups\": [\n    { \"id\": 1, \"name\": \"Group A\", \"group_type\": \"group\" },\n    { \"id\": 2, \"name\": \"Group B\", \"group_type\": \"private\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Create a group in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school where the group will be created."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Group A\",\"level_id\":2,\"school_site_id\":3,\"location_id\":4,\"coach_id\":5,\"days_of_training\":[\"consectetur\"],\"starting_time\":\"15:30\",\"duration\":90,\"coach_work_time\":120,\"player_capacity\":25,\"group_type\":\"group\"}"
                        },
                        "description": "Creates a new training group associated with the given school. Requires the permission \"administrative.customer.group.store\" and that the user belongs to the school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Group created successfully\",\n  \"group\": {\n    \"id\": 10,\n    \"name\": \"Group A\",\n    \"school_id\": 2,\n    \"level_id\": 3,\n    \"school_site_id\": 1,\n    \"location_id\": 4,\n    \"coach_id\": 5,\n    \"starting_time\": \"15:30\",\n    \"duration\": 90,\n    \"coach_work_time\": 120,\n    \"player_capacity\": 25,\n    \"group_type\": \"group\",\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"coach_id\": [\"The selected user is not a valid coach.\"],\n    \"days_of_training.0\": [\"Each item must be an object with a single day as key.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Show group details",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the group to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns detailed information for a specific training group within the given school, including relations and assigned players.\nRequires the permission \"administrative.customer.group.show\"."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 10,\n  \"name\": \"Elite Training Group\",\n  \"school\": { \"id\": 2, \"nickname\": \"Elite Academy\" },\n  \"level\": { \"id\": 3, \"name\": \"Advanced\" },\n  \"location\": { \"id\": 4, \"name\": \"Court 1\" },\n  \"school_site\": { \"id\": 1, \"name\": \"Main Site\" },\n  \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n  \"coach\": { \"id\": 8, \"name\": \"John Doe\" },\n  \"days_of_training\": [\n    {\"Wednesday\": {\"startingTime\": \"15:30\", \"duration\": 60, \"endingTime\": \"16:30\"}}\n  ],\n  \"starting_time\": \"15:00\",\n  \"duration\": 90,\n  \"coach_work_time\": 60,\n  \"player_capacity\": 12,\n  \"group_type\": \"group\",\n  \"players\": [\n    { \"id\": 20, \"name\": \"Player One\" },\n    { \"id\": 21, \"name\": \"Player Two\" }\n  ],\n  \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n  \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Group not found in this school\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Update an existing group",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the group to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Advanced Group B\",\"level_id\":2,\"school_site_id\":3,\"location_id\":4,\"coach_id\":5,\"days_of_training\":[{\"Wednesday\":{\"startingTime\":\"15:30\",\"duration\":60,\"endingTime\":\"16:30\"}}],\"starting_time\":\"16:00\",\"duration\":60,\"coach_work_time\":90,\"player_capacity\":20,\"group_type\":\"private\"}"
                        },
                        "description": "Updates one or more fields of a training group within the given school. Requires the permission \"administrative.customer.group.update\" and that the user belongs to the school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Group updated successfully\",\n  \"group\": {\n    \"id\": 10,\n    \"name\": \"Advanced Group B\",\n    \"school_id\": 2,\n    \"level_id\": 2,\n    \"school_site_id\": 3,\n    \"location_id\": 4,\n    \"coach_id\": 5,\n    \"starting_time\": \"16:00\",\n    \"duration\": 60,\n    \"coach_work_time\": 90,\n    \"player_capacity\": 20,\n    \"group_type\": \"private\",\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Group does not belong to this school\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"coach_id\": [\"The selected user is not a valid coach.\"],\n    \"days_of_training.0\": [\"Each item must be an object with a single day as key.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Archive (delete) a group",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the group to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Marks the specified group as archived (soft delete) within the given school. Archived groups are excluded from default queries."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Group archived successfully\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Group not found in this school\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Assign players to a group",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups\/:id\/assign-players",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups\/:id\/assign-players",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the group to assign players to."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"player_ids\":[20,21,22]}"
                        },
                        "description": "Assigns one or more players to a training group in the specified school. Requires the permission \"administrative.customer.group.assign\".\nValidates that the group belongs to the school and that each ID belongs to a user with the \"player\" role. Existing assignments are preserved."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Players assigned successfully\",\n  \"assigned_players\": [20, 21]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Invalid or missing player IDs\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School or Group not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Groups - Remove players from a group",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/customer\/groups\/:id\/remove-players",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/customer\/groups\/:id\/remove-players",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the group to remove players from."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"player_ids\":[20,21]}"
                        },
                        "description": "Removes one or more players from a training group in the specified school. Requires the permission \"administrative.customer.group.assign\".\nIf no player IDs are provided or the array is empty, all players will be removed from the group.\nOnly users with the role \"player\" are considered; invalid IDs are ignored. If none are valid, a 400 error is returned."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Players removed successfully\",\n  \"removed_players\": [20, 21]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"All players removed from the group\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Invalid input format\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"No valid players found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School or Group not found\" }",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Ecommerce",
            "description": "",
            "item": [
                {
                    "name": "Form - Get picklist options for the subscription registration form.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/picklist\/:field",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/picklist\/:field",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "field",
                                    "key": "field",
                                    "value": "gender",
                                    "description": "The field to retrieve options for."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a list of selectable options for a specific form field used in the user subscription flow.\nOptions are loaded from a centralized JSON file and mapped directly by field name.\nNo authentication required.\n\nSupported field names include:\n- `registration_type`\n- `type_of_registration`\n- `how_did_you_hear_about_us`\n- `gender`\n- `level_of_experience`\n- `active_family_membership`\n- `t_shirt_size`\n- `school_grade`\n\nEach field returns an array of options with `label` and `value` keys.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  { \"label\": \"Male\", \"value\": \"Male\" },\n  { \"label\": \"Female\", \"value\": \"Female\" }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "[]\nReturned if the field key is not found in the picklist JSON.",
                            "name": "unknown field"
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n  \"error\": \"Picklist file not found.\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Form - Check contact status (email and\/or phone)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/check-email-status",
                            "query": [
                                {
                                    "key": "email",
                                    "value": "user%40example.com",
                                    "description": "required-without:phone The email to check (case-insensitive).",
                                    "disabled": false
                                },
                                {
                                    "key": "phone",
                                    "value": "%28786%29+555-1234",
                                    "description": "required-without:email The phone to check (will be normalized to E.164).",
                                    "disabled": false
                                },
                                {
                                    "key": "phone_code",
                                    "value": "57",
                                    "description": "required-with:phone Country calling code (digits only, no +).",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/check-email-status?email=user%40example.com&phone=%28786%29+555-1234&phone_code=57",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Checks whether a contact exists by email and\/or phone and guides the user on next steps.\nIf both are provided and they belong to different users, returns a mismatch. If only the\nphone matches, an email hint is returned (e.g., j***z@d***o.c*).",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"account\",\n  \"message\": \"User already exist with that email, please choose one of the following options to access your account\"\n}",
                            "name": "account in school"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"player\",\n  \"message\": \"This contact belongs to a player in this school. Please contact the account owner.\",\n  \"account_contact\": \"owner@example.com\"\n}",
                            "name": "player in school"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"lead\",\n  \"message\": \"This contact is registered as a lead. Please continue your registration.\",\n  \"step_status\": \"step_1\"\n}",
                            "name": "lead in school"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"available_existing_user\",\n  \"message\": \"User exists but is available for this school.\"\n}",
                            "name": "available existing user (not in school)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"available_existing_user\",\n  \"message\": \"User exists but is available for this school.\",\n  \"email_hint\": \"j***z@d***o.c*\",\n  \"can_login_with\": \"phone\"\n}",
                            "name": "available existing user (phone-only match in school)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"mismatch\",\n  \"message\": \"The given email and phone belong to different accounts.\",\n  \"email_hint\": \"j***z@d***o.c*\"\n}",
                            "name": "mismatch (email and phone belong to different users)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"available_new_user\",\n  \"message\": \"This contact information is available for registration.\"\n}",
                            "name": "available new user"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"status\": \"in_use_other_role\",\n  \"message\": \"This contact is already in use in this school.\",\n  \"roles\": [\"coach\", \"staff\"]\n}",
                            "name": "in use by other role in school"
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"status\": \"error\",\n  \"message\": \"Provide at least one of: email or phone.\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Form - Step 1: Register a new lead with minimal data",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-1",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-1",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"email\":\"user@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\",\"registration_type\":\"Kid\",\"interested_in\":\"Camp\",\"how_did_you_hear_about_us\":\"Friend Referral\"}"
                        },
                        "description": "Creates a new user with the \"lead\" role and an initial profile, then links it to the given school.\nNo authentication required. The email must be unique across users.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Lead created successfully.\",\n  \"user_id\": 24\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"email\": [\"The email has already been taken.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Form - Step 2: Primary and secondary contact information + password",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-2",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-2",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"email\":\"lead@example.com\",\"phone_code\":\"57\",\"billing_phone_number\":\"(786) 555-1234\",\"billing_address\":\"123 Main St\",\"billing_address_2\":\"Apt 4B\",\"billing_city\":\"Miami\",\"billing_state\":\"FL\",\"billing_zip_code\":\"33101\",\"billing_country\":\"USA\",\"secondary_contact_first_name\":\"Maria\",\"secondary_contact_last_name\":\"Lopez\",\"secondary_phone_number\":\"+1987654321\",\"secondary_email\":\"maria.lopez@example.com\",\"password\":\"secret123\",\"password_confirmation\":\"secret123\"}"
                        },
                        "description": "Updates the lead's contact and billing information, requires setting a password, logs the user in,\nsends a welcome notification, and returns an auth token. Phone is normalized to E.164 using the\nprovided country code. If the user is not linked to the school yet, it will be attached.\nNo authentication required.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Step 2 information saved successfully.\",\n  \"profile\": {\n    \"id\": 10,\n    \"billing_phone_number\": \"+577865551234\",\n    \"billing_address\": \"123 Main St\",\n    \"billing_city\": \"Miami\",\n    \"billing_state\": \"FL\",\n    \"billing_zip_code\": \"33101\",\n    \"billing_country\": \"USA\",\n    \"step_status\": \"step_2\"\n  },\n  \"token\": \"1|eyJ0eXAiOiJKV1QiLCJhbGciOi...\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"email\": [\"The selected email is invalid.\"],\n    \"password\": [\"The password confirmation does not match.\"],\n    \"billing_phone_number\": [\"The billing phone number field is required.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Form - Step 3: Register one or more players under the authenticated account",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-3",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-3",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "Slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"players\":[\"fugit\"]}"
                        },
                        "description": "Allows an authenticated account to create one or more player profiles (e.g., children). Players are\ncreated without email, assigned the \"player\" role, linked to the authenticated account as parent,\nand attached to the given school.\n\nPermissions: customer.ecommerce.player.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Players registered successfully.\",\n  \"player_ids\": [32, 33]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\n  \"message\": \"Unauthorized\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"players\": [\"The players field is required.\"],\n    \"players.0.first_name\": [\"The players.0.first name field is required.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Form - Step 4: Finalize player registration and create subscriptions",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-4",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/user-subscription-form\/step-4",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "Slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"players\":[\"deleniti\"],\"accept_terms\":true}"
                        },
                        "description": "Updates player profiles, creates a pending subscription per player for the selected service, optionally\napplies per-player coupons, and generates a single order for all items. If the grand total is zero, the\norder is marked as paid and related subscriptions are activated with auto_renew=false.\n\nPermissions: customer.ecommerce.subscription.store. Players must belong to the authenticated account."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Training information and subscriptions saved successfully.\",\n  \"updated_players\": [1, 2],\n  \"order_id\": 25,\n  \"total_amount\": 150.00,\n  \"details\": [\n    {\n      \"player_id\": 1,\n      \"player_name\": \"John Doe\",\n      \"main_service\": \"Soccer 2x Weekly\",\n      \"main_service_price\": 120.00,\n      \"coupon_applied\": \"WELCOME10\",\n      \"discount\": 12.00\n    }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\n  \"message\": \"Unauthorized\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n  \"message\": \"Not Found\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"players\": [\"The players field is required.\"],\n    \"players.0.service_id\": [\"The players.0.service id field is required.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Categories - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/service-categories",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table only). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "optional Sort column (applied when using dynamic filters).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "inventore",
                                    "description": "optional Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "active",
                                    "description": "mixed Use [min,max] for between; ignored for empty\/not_empty.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/service-categories?view=select&per_page=15&sort_by=nickname&direction=desc&filters[0]=inventore&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=active",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List service categories for a school. Supports dynamic filters, sorting, and two response modes (table and select).\nRequires permission: administrative.ecommerce.service_category.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"categories\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\"id\": 1, \"nickname\": \"Beginner Programs\", \"description\": \"Entry-level tennis training\", \"status\": \"active\"}\n    ],\n    \"per_page\": 10,\n    \"total\": 1\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"nickname\",\"description\",\"status\"],\n    \"defaultColumns\": [\"id\",\"nickname\",\"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"categories\": [{\"id\": 1, \"nickname\": \"Beginner Programs\"}]}\nWhen view=select, returns a flat list of categories with id and nickname.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Categories - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/service-categories",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/service-categories",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Memberships\",\"description\":\"Yearly payment required for all users.\",\"status\":\"active\"}"
                        },
                        "description": "Create a new service category for a school. Requires permission: administrative.ecommerce.service_category.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Category created successfully\",\n  \"category\": {\n    \"id\": 5,\n    \"nickname\": \"Memberships\",\n    \"description\": \"Yearly payment required for all users.\",\n    \"status\": \"active\",\n    \"school_id\": 3,\n    \"creator_id\": 7\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Categories - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The ID of the service category to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a specific service category for a school, including its creator. Requires permission: administrative.ecommerce.service_category.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 5,\n  \"nickname\": \"Memberships\",\n  \"description\": \"Yearly payment required for all users.\",\n  \"status\": \"active\",\n  \"school_id\": 3,\n  \"creator_id\": 7,\n  \"creator\": {\"id\": 7, \"name\": \"Admin User\"},\n  \"created_at\": \"2025-06-09T14:00:00.000000Z\",\n  \"updated_at\": \"2025-06-09T14:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service Category not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Categories - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "3",
                                    "description": "The ID of the service category."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Premium Services\",\"description\":\"Includes advanced and personalized plans.\",\"status\":\"inactive\"}"
                        },
                        "description": "Update an existing service category for a school. Requires permission: administrative.ecommerce.service_category.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Service category updated successfully\",\n  \"category\": {\n    \"id\": 3,\n    \"nickname\": \"Premium Services\",\n    \"description\": \"Includes advanced and personalized plans.\",\n    \"status\": \"inactive\",\n    \"school_id\": 5,\n    \"creator_id\": 7\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service category not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Categories - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/service-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "7",
                                    "description": "The ID of the service category."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive a service category (status set to \"archived\"). Does not delete the record. Requires permission: administrative.ecommerce.service_category.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Service category archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service category not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Services - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/services",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table only). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "optional Sort column (applied when using dynamic filters).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "ipsa",
                                    "description": "optional Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "active",
                                    "description": "mixed Use [min,max] for between; ignored for empty\/not_empty.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/services?view=select&per_page=15&sort_by=nickname&direction=desc&filters[0]=ipsa&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=active",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List services for a school. Supports dynamic filters, sorting, and two response modes (table and select).\nRequires permission: administrative.ecommerce.service.index OR customer.ecommerce.subscription.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"services\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\"id\": 1, \"nickname\": \"Basic Plan\", \"frequency\": \"weekly\", \"sessions\": 8, \"status\": \"active\", \"regular_fee\": \"300.00\"}\n    ],\n    \"per_page\": 10,\n    \"total\": 1\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"nickname\",\"type\",\"frequency\",\"sessions\",\"status\",\"regular_fee\"],\n    \"defaultColumns\": [\"id\",\"nickname\",\"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"services\": [{\"id\": 1, \"nickname\": \"Basic Plan\", \"frequency\": \"weekly\"}]}\nWhen view=select, returns a flat list of services with id, nickname, and frequency.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Services - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/services",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/services",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Private Lessons\",\"description\":\"One-on-one personalized training.\",\"frequency\":\"weekly\",\"type\":\"private\",\"sessions\":12,\"session_duration\":60,\"billing_option\":\"perspiciatis\",\"billing_limit\":3,\"group_membership_limit\":2,\"regular_fee\":300000,\"discounted_fee\":250000,\"currency\":\"USD\",\"features\":[\"Racket included\",\"Gym access\"],\"status\":\"active\",\"school_site_id\":2,\"category_id\":4}"
                        },
                        "description": "Create a new service for a school. Requires permission: administrative.ecommerce.service.store\nServices include frequency, billing, pricing options, and belong to an optional category\/site."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Service created successfully\",\n  \"service\": {\n    \"id\": 15,\n    \"nickname\": \"Private Lessons\",\n    \"description\": \"One-on-one personalized training.\",\n    \"frequency\": \"weekly\",\n    \"type\": \"private\",\n    \"sessions\": 12,\n    \"session_duration\": 60,\n    \"group_membership_limit\": 2,\n    \"billing_limit\": 3,\n    \"regular_fee\": \"300000.00\",\n    \"discounted_fee\": \"250000.00\",\n    \"currency\": \"USD\",\n    \"features\": [\"Racket included\", \"Gym access\"],\n    \"status\": \"active\",\n    \"school_id\": 3,\n    \"school_site_id\": 2,\n    \"category_id\": 4,\n    \"creator_id\": 7,\n    \"school\": {\"id\": 3, \"name\": \"Elite Tennis Academy\"},\n    \"school_site\": {\"id\": 2, \"name\": \"North Site\"},\n    \"category\": {\"id\": 4, \"nickname\": \"Private\"},\n    \"creator\": {\"id\": 7, \"name\": \"Admin User\"}\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"frequency\": [\"The frequency field is required.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Services - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The ID of the service to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a specific service for a school, including relations (school, school_site, category, creator).\nRequires permission: administrative.ecommerce.service.show OR customer.ecommerce.subscription.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"service\": {\n    \"id\": 5,\n    \"nickname\": \"Private Lessons\",\n    \"description\": \"One-on-one personalized training.\",\n    \"frequency\": \"weekly\",\n    \"type\": \"private\",\n    \"sessions\": 12,\n    \"billing_limit\": 3,\n    \"regular_fee\": \"300000.00\",\n    \"discounted_fee\": \"250000.00\",\n    \"currency\": \"USD\",\n    \"features\": [\"Racket included\", \"Gym access\"],\n    \"status\": \"active\",\n    \"school\": { \"id\": 3, \"name\": \"Elite Tennis Academy\" },\n    \"school_site\": { \"id\": 2, \"name\": \"North Site\" },\n    \"category\": { \"id\": 4, \"nickname\": \"Private\" },\n    \"creator\": { \"id\": 7, \"name\": \"Admin User\" }\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Services - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "15",
                                    "description": "The ID of the service to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Private Lessons\",\"description\":\"One-on-one training with a professional coach.\",\"frequency\":\"weekly\",\"type\":\"private\",\"sessions\":12,\"session_duration\":60,\"billing_limit\":3,\"group_membership_limit\":2,\"regular_fee\":300000,\"discounted_fee\":250000,\"currency\":\"USD\",\"features\":[\"Pool access\",\"Gym access\"],\"status\":\"active\",\"school_site_id\":2,\"category_id\":4}"
                        },
                        "description": "Update an existing service for a school. Requires permission: administrative.ecommerce.service.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Service updated successfully\",\n  \"service\": {\n    \"id\": 15,\n    \"nickname\": \"Private Lessons\",\n    \"description\": \"One-on-one training with a professional coach.\",\n    \"frequency\": \"weekly\",\n    \"type\": \"private\",\n    \"sessions\": 12,\n    \"session_duration\": 60,\n    \"group_membership_limit\": 2,\n    \"billing_limit\": 3,\n    \"regular_fee\": \"300000.00\",\n    \"discounted_fee\": \"250000.00\",\n    \"currency\": \"USD\",\n    \"features\": [\"Pool access\", \"Gym access\"],\n    \"status\": \"active\",\n    \"school_id\": 3,\n    \"school_site_id\": 2,\n    \"category_id\": 4,\n    \"creator_id\": 7,\n    \"school\": {\"id\": 3, \"name\": \"Elite Tennis Academy\"},\n    \"school_site\": {\"id\": 2, \"name\": \"North Site\"},\n    \"category\": {\"id\": 4, \"nickname\": \"Private\"},\n    \"creator\": {\"id\": 7, \"name\": \"Admin User\"}\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service not found or unauthorized.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"frequency\": [\"The frequency field is required.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Services - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/services\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "9",
                                    "description": "The ID of the service."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive a service (status set to \"archived\"). Does not delete the record.\nRequires permission: administrative.ecommerce.service.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Service archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Service not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table only). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "start_date",
                                    "description": "optional Sort column (applied when using dynamic filters).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "account_id",
                                    "value": "42",
                                    "description": "optional (Admin only) Account owner (filters by player.parent_id).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "voluptas",
                                    "description": "optional Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "active",
                                    "description": "mixed Use [min,max] for between; ignored for empty\/not_empty.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions?view=select&per_page=15&sort_by=start_date&direction=desc&account_id=42&filters[0]=voluptas&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=active",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List subscriptions for a school. Supports dynamic filters, sorting, and two response modes (table and select).\nRequires permission: administrative.ecommerce.subscription.index OR customer.ecommerce.subscription.index\n\nNotes:\n- Accounts only see subscriptions for their own players.\n- Admins can filter by account_id to scope by the account owner (player.parent_id)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"subscriptions\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Monthly - Tennis\",\n        \"start_date\": \"2025-07-01T00:00:00.000000Z\",\n        \"next_renewal_date\": \"2025-08-01T00:00:00.000000Z\",\n        \"status\": \"active\",\n        \"auto_renew\": true,\n        \"payment_method\": \"card\",\n        \"player\": {\"id\": 4, \"name\": \"John Doe\"},\n        \"service\": {\"id\": 2, \"name\": \"Tennis Classes\"}\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 1\n  },\n  \"metadata\": {\n    \"columns\": [\n      \"id\", \"nickname\", \"status\", \"start_date\", \"next_renewal_date\",\n      \"auto_renew\", \"payment_method\", \"player\", \"service\"\n    ],\n    \"defaultColumns\": [\"id\", \"nickname\", \"status\", \"start_date\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"subscriptions\": [{\"id\": 1, \"nickname\": \"Monthly - Tennis\"}]}\nWhen view=select, returns a flat list of subscriptions with id and nickname.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"service_id\":5,\"player_id\":12,\"start_date\":\"2025-08-22\",\"next_renewal_date\":\"2025-09-22\",\"last_payment_date\":\"2025-08-15\",\"auto_renew\":true,\"has_pending_balance\":false,\"is_paused\":false,\"paused_at\":\"2025-08-20\",\"resume_at\":\"2025-09-01\",\"pause_reason\":\"Vacation pause request\",\"metadata\":{\"notes\":\"Created via admin panel\"},\"status\":\"active\\n\\nOrder generation (when status==pending):\",\"account_user_id\":99,\"coupon_code\":\"WELCOME10\"}"
                        },
                        "description": "Create a new subscription for a school. Requires permission: administrative.ecommerce.subscription.create\n\nBehavior:\n- If status != \"pending\", returns the created subscription.\n- If status == \"pending\", an Order is created for the first charge; optional coupon_code may apply a discount.\n  If the net total is zero, the order is marked as paid and the subscription becomes active with auto_renew=false."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Subscription created successfully (order generated)\",\n  \"subscription\": {\n    \"id\": 45,\n    \"nickname\": \"John Doe - Monthly Tennis\",\n    \"service_id\": 5,\n    \"player_id\": 12,\n    \"school_id\": 1,\n    \"start_date\": \"2025-08-22T00:00:00.000000Z\",\n    \"next_renewal_date\": \"2025-09-22T00:00:00.000000Z\",\n    \"status\": \"pending\",\n    \"auto_renew\": true,\n    \"has_pending_balance\": false,\n    \"is_paused\": false,\n    \"player\": {\"id\": 12, \"name\": \"John Doe\"},\n    \"service\": {\"id\": 5, \"nickname\": \"Monthly Tennis\"}\n  },\n  \"order\": {\n    \"id\": 102,\n    \"status\": \"pending_payment\",\n    \"total_amount\": 120.00\n  },\n  \"redemption\": {\n    \"discount_applied\": 12.00,\n    \"currency\": \"USD\",\n    \"redeemed_at\": \"2025-08-20T10:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"service_id\": [\"Please select a service for this subscription.\"],\n    \"player_id\": [\"Please select a player for this subscription.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "45",
                                    "description": "Subscription ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a specific subscription with related data (player, service, coupon, school, payments).\nRequires permission: administrative.ecommerce.subscription.show OR customer.ecommerce.subscription.show\n\nNotes:\n- Accounts only see subscriptions for their own players.\n- Always scoped to the provided school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"subscription\": {\n    \"id\": 45,\n    \"nickname\": \"John Doe - Monthly Tennis\",\n    \"service_id\": 5,\n    \"player_id\": 12,\n    \"school_id\": 1,\n    \"coupon_id\": null,\n    \"start_date\": \"2025-08-22T00:00:00.000000Z\",\n    \"next_renewal_date\": \"2025-09-22T00:00:00.000000Z\",\n    \"last_payment_date\": null,\n    \"auto_renew\": true,\n    \"has_pending_balance\": false,\n    \"is_paused\": false,\n    \"paused_at\": null,\n    \"resume_at\": null,\n    \"pause_reason\": null,\n    \"metadata\": {\"notes\": \"Subscription created via admin panel\"},\n    \"status\": \"active\",\n    \"player\": {\"id\": 12, \"name\": \"John Doe\", \"email\": \"john.doe@example.com\"},\n    \"service\": {\n      \"id\": 5,\n      \"nickname\": \"Monthly Tennis\",\n      \"description\": \"Tennis classes for all levels\",\n      \"frequency\": \"monthly\",\n      \"type\": \"group\",\n      \"regular_fee\": 150.00,\n      \"currency\": \"USD\"\n    },\n    \"coupon\": null,\n    \"school\": {\"id\": 1, \"nickname\": \"Elite Tennis Academy\", \"slug\": \"elite-tennis-academy\"},\n    \"payments\": [\n      {\"id\": 999, \"amount\": 150.00, \"currency\": \"USD\", \"paid_at\": \"2025-08-01T12:00:00.000000Z\"}\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Subscription not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "45",
                                    "description": "Subscription ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"service_id\":8,\"player_id\":12,\"coupon_id\":3,\"start_date\":\"2025-08-22\",\"next_renewal_date\":\"2025-09-22\",\"last_payment_date\":\"2025-08-15\",\"auto_renew\":true,\"has_pending_balance\":false,\"is_paused\":false,\"paused_at\":\"2025-08-20\",\"resume_at\":\"2025-09-01\",\"pause_reason\":\"Vacation pause request\",\"metadata\":{\"notes\":\"Updated via admin panel\"},\"status\":\"active\"}"
                        },
                        "description": "Update a subscription's details. Requires permission: administrative.ecommerce.subscription.update\n\nNotes:\n- Nickname is auto-regenerated when player_id or service_id changes (\"Player - Service\").\n- If service or start_date changes and next_renewal_date is omitted, it is recalculated for recurring services.\n- Always scoped to the provided school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Subscription updated successfully\",\n  \"subscription\": {\n    \"id\": 45,\n    \"nickname\": \"John Doe - Advanced Tennis\",\n    \"service_id\": 8,\n    \"player_id\": 12,\n    \"school_id\": 1,\n    \"start_date\": \"2025-08-22T00:00:00.000000Z\",\n    \"next_renewal_date\": \"2025-09-22T00:00:00.000000Z\",\n    \"status\": \"active\",\n    \"auto_renew\": true,\n    \"player\": {\"id\": 12, \"name\": \"John Doe\"},\n    \"service\": {\"id\": 8, \"nickname\": \"Advanced Tennis\"}\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Subscription not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"service_id\": [\"The selected service does not exist.\"],\n    \"player_id\": [\"The selected user is not a valid player.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Pause",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/pause",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/pause",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "Subscription ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"resume_at\":\"2025-09-01\",\"pause_reason\":\"Vacation pause request\"}"
                        },
                        "description": "Pause a subscription. Requires permission: administrative.ecommerce.subscription.update\n\nNotes:\n- While paused, the subscription won't be charged (is_paused=true, auto_renew=false, status=paused).\n- You may optionally set resume_at and a pause_reason.\n- Always scoped to the provided school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Subscription paused successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Subscription not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Resume",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/resume",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/resume",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "Subscription ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Resume a paused subscription. Requires permission: administrative.ecommerce.subscription.update\n\nNotes:\n- Only paused subscriptions can be resumed; otherwise returns 400.\n- The next_renewal_date is shifted by the number of paused days.\n- Always scoped to the provided school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Subscription resumed successfully.\", \"subscription\": {\"id\": 5, \"status\": \"active\", \"next_renewal_date\": \"2025-09-17\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\"message\": \"This subscription is not paused.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Subscription not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscriptions - Cancel",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/cancel",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/subscriptions\/:id\/cancel",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "Subscription ID."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"cancel_reason\":\"Player won't continue next month\"}"
                        },
                        "description": "Cancel a subscription at the end of the current period. Requires permission: administrative.ecommerce.subscription.update\n\nNotes:\n- Keeps access until next_renewal_date; sets auto_renew=false and preserves current status (typically active).\n- Records cancel_reason and a timestamp in metadata.\n- Only active subscriptions can be canceled; otherwise 400.\n- Always scoped to the provided school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Subscription will remain active until the end of the paid period and will not renew.\", \"subscription\": {\"id\": 12, \"status\": \"active\", \"access_until\": \"2025-08-31T23:59:59.000000Z\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\"message\": \"Only active subscriptions can be canceled.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Subscription not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Orders - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/orders",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table only). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "created_at",
                                    "description": "optional Sort column (base table).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "service_id",
                                    "value": "3",
                                    "description": "optional Filter by related service (via order items -> subscription.service_id).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "nulla",
                                    "description": "optional Dynamic filters. Each filter must include column, operator, value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "paid",
                                    "description": "mixed Use [min,max] for between; ignored for empty\/not_empty.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/orders?view=select&per_page=15&sort_by=created_at&direction=desc&service_id=3&filters[0]=nulla&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=paid",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List orders for a school. If the user has role \"account\" or \"lead\", only their own orders are returned.\nSupports dynamic filters, sorting, and two response modes (table and select).\nRequires permission: administrative.ecommerce.order.index (admins) or customer.ecommerce.order.index (customers)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"orders\": {\n    \"data\": [\n      {\n        \"id\": 1,\n        \"status\": \"paid\",\n        \"total_amount\": \"180.00\",\n        \"currency\": \"USD\",\n        \"payment_method\": \"card\",\n        \"paid_at\": \"2025-08-01T12:00:00Z\",\n        \"user\": {\"id\": 4, \"user_name\": \"juan.perez\"},\n        \"items\": [\n          {\"id\":1,\"description\":\"Monthly Tennis Plan\",\"amount\":\"90.00\",\"itemable\":{\"id\":7,\"nickname\":\"Juanito Plan\",\"service\":{\"id\":3,\"nickname\":\"Tennis Pro Monthly\"}}}\n        ]\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 42,\n    \"links\": {\"first\": \"...\", \"last\": \"...\", \"next\": \"...\"}\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"status\",\"total_amount\",\"payment_method\",\"paid_at\",\"user\",\"items\"],\n    \"defaultColumns\": [\"id\",\"status\",\"total_amount\",\"paid_at\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"orders\": [{\"id\": 1, \"status\": \"paid\"}]}\nWhen view=select, returns a flat list of orders with id and status.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Orders - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/orders",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/orders",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"user_id\":8,\"currency\":\"USD\",\"payment_method\":\"card\",\"status\":\"et\",\"paid_at\":\"2025-08-01T12:00:00Z\",\"metadata\":[],\"items\":[\"et\"]}"
                        },
                        "description": "Creates an order with optional items. Admins can create orders for any user in the school;\naccounts\/leads can only create orders for themselves. The total_amount is computed from items when provided.\n\nRequired permissions: administrative.ecommerce.order.store (admins) or customer.ecommerce.order.store (customers)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\":\"Order created\",\"order\": {\"id\":1,\"status\":\"pending\",\"total_amount\":\"100.00\"}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Orders - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "vero",
                                    "description": "School slug"
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "11",
                                    "description": "Order id"
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single order with items and user info. Accounts\/leads can only access their own orders."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Orders - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "quis",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the order."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"currency\":\"m\",\"payment_method\":\"steoiwwlcyldsfyummkbjjro\",\"payment_url\":\"http:\\\/\\\/www.heathcote.info\\\/eveniet-totam-voluptas-velit-maxime-ipsa-consequuntur\",\"status\":\"paid\",\"paid_at\":\"2026-02-26T04:17:46\",\"items\":[{\"itemable_type\":\"omnis\",\"itemable_id\":19,\"description\":\"Ut ipsa nostrum commodi.\",\"amount\":729494.695099553,\"quantity\":41}]}"
                        },
                        "description": "Updates order fields and optionally replaces items. Recomputes total when items are provided.\nAccounts\/leads can only update their own orders."
                    },
                    "response": []
                },
                {
                    "name": "Orders - Delete",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/orders\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "suscipit",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the order."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Deletes an order and its items. Accounts\/leads can only delete their own orders."
                    },
                    "response": []
                },
                {
                    "name": "Invoices - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/invoices",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (table only). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "paid_at",
                                    "description": "optional Sort column. Allowed: id,status,amount,currency,payment_method,paid_at,issued_at,created_at.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "status",
                                    "value": "paid",
                                    "description": "optional Filter by status.",
                                    "disabled": false
                                },
                                {
                                    "key": "service_id",
                                    "value": "3",
                                    "description": "optional Filter by related service (subscription or order item).",
                                    "disabled": false
                                },
                                {
                                    "key": "date_from",
                                    "value": "2025-08-01",
                                    "description": "date optional Inclusive start date for issued_at (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "date_to",
                                    "value": "2025-08-31",
                                    "description": "date optional Inclusive end date for issued_at (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "invoiceable_type",
                                    "value": "order",
                                    "description": "optional Filter by invoiceable type. One of: order, subscription.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "tempora",
                                    "description": "optional Dynamic filters (applied if a scopeFilter exists on the model). Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "paid",
                                    "description": "mixed",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/invoices?view=select&per_page=15&sort_by=paid_at&direction=desc&status=paid&service_id=3&date_from=2025-08-01&date_to=2025-08-31&invoiceable_type=order&filters[0]=tempora&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=paid",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List invoices for a school. If the current user has role \"account\" or \"lead\", only their own invoices are returned. Supports filters, sorting, and two response modes (table and select).\nRequires permission: administrative.ecommerce.invoice.index (admins) or customer.ecommerce.invoice.index (customers)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"invoices\": {\n    \"data\": [\n      {\n        \"id\": 12,\n        \"status\": \"paid\",\n        \"amount\": \"180.00\",\n        \"currency\": \"USD\",\n        \"payment_method\": \"stripe\",\n        \"issued_at\": \"2025-08-01T12:00:00Z\",\n        \"paid_at\": \"2025-08-01T12:00:00Z\",\n        \"user\": {\"id\": 4, \"user_name\": \"juan.perez\"},\n        \"invoiceable\": {\n          \"type\": \"order\",\n          \"items\": [\n            {\"id\":1,\"description\":\"Monthly Tennis Plan\",\"amount\":\"90.00\",\"quantity\":1,\n             \"itemable\":{\"id\":7,\"nickname\":\"Juanito Plan\",\"service\":{\"id\":3,\"nickname\":\"Tennis Pro Monthly\"}}}\n          ]\n        }\n      }\n    ],\n    \"meta\": {\"current_page\":1,\"per_page\":10,\"total\":42},\n    \"links\": {\"first\": \"...\", \"last\": \"...\", \"next\": \"...\"}\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"status\",\"amount\",\"currency\",\"payment_method\",\"issued_at\",\"paid_at\",\"user\",\"invoiceable\"],\n    \"defaultColumns\": [\"id\",\"status\",\"amount\",\"paid_at\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"invoices\": [{\"id\": 12, \"status\": \"paid\", \"amount\": \"180.00\", \"currency\": \"USD\"}]}\nWhen view=select, returns a flat list of invoices with a compact subset of fields.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Invoices - Checkout",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/invoices\/:invoice\/checkout",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/invoices\/:invoice\/checkout",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "invoice",
                                    "key": "invoice",
                                    "value": "ratione",
                                    "description": "The invoice."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"invoice_id\":456,\"success_url\":\"https:\\\/\\\/app.com\\\/checkout\\\/success\",\"cancel_url\":\"https:\\\/\\\/app.com\\\/checkout\\\/cancel\",\"confirm\":true}"
                        },
                        "description": "Preview or create a Stripe Checkout Session for an invoice.\nWhen confirm=false, returns a preview (items + total). When confirm=true, creates a session and returns checkout_url.\nRequires permission: customer.ecommerce.invoice.checkout (customers) or administrative.ecommerce.invoice.checkout (admins)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"items\":[{\"name\":\"Monthly Tennis Plan\",\"description\":\"Monthly Tennis Plan\",\"amount\":90,\"quantity\":1}],\"total\":180}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"checkout_url\":\"https:\/\/checkout.stripe.com\/c\/pay\/cs_test_...\",\"checkout_session_id\":\"cs_test_...\",\"expires_at\":1712345678}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Forbidden.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Invoice not found or unauthorized.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"Invoice is not payable.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"The given data was invalid.\",\"errors\":{\"invoice_id\":[\"The invoice id field is required.\"]}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Invoices - Download PDF",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/invoices\/:id\/pdf\/download",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/invoices\/:id\/pdf\/download",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "123",
                                    "description": "The ID of the invoice."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a temporary signed URL to download an invoice PDF from S3. If the PDF does not exist, it will be generated and uploaded first.\nRequires permission: administrative.ecommerce.invoice.download (admins) or customer.ecommerce.invoice.download (customers)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 302,
                            "body": "{\"Location\": \"https:\/\/s3-url\/invoice_1.pdf?AWSAccessKeyId=...\"}",
                            "name": ""
                        },
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Invoice not found or PDF could not be created\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Invoices - Generate PDF",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/invoices\/:id\/pdf\/generate",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/invoices\/:id\/pdf\/generate",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "123",
                                    "description": "The ID of the invoice."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Generate a PDF for an invoice, upload it to S3, store the path in invoice metadata, and return an accessible URL.\nRequires permission: administrative.ecommerce.invoice.generate_pdf (admins) or customer.ecommerce.invoice.generate_pdf (customers)"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"url\": \"https:\/\/your-bucket.s3.amazonaws.com\/invoices\/2\/invoice_1.pdf\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Invoice not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Combined Records - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/combined-records",
                            "query": [
                                {
                                    "key": "type",
                                    "value": "order",
                                    "description": "optional Filter by record type. One of: order, invoice, subscription, all. Default: all.",
                                    "disabled": false
                                },
                                {
                                    "key": "status",
                                    "value": "paid",
                                    "description": "optional Filter by status (applies to all types).",
                                    "disabled": false
                                },
                                {
                                    "key": "user_id",
                                    "value": "42",
                                    "description": "optional Filter by user ID (orders\/invoices: user_id, subscriptions: player_id).",
                                    "disabled": false
                                },
                                {
                                    "key": "service_type",
                                    "value": "group",
                                    "description": "optional Filter subscriptions by service type (ignored for orders\/invoices).",
                                    "disabled": false
                                },
                                {
                                    "key": "date_from",
                                    "value": "2025-08-01",
                                    "description": "date optional Inclusive start date (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "date_to",
                                    "value": "2025-08-31",
                                    "description": "date optional Inclusive end date (YYYY-MM-DD).",
                                    "disabled": false
                                },
                                {
                                    "key": "search",
                                    "value": "ORD-12",
                                    "description": "optional Free-text search across reference, status, and id.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "20",
                                    "description": "optional Items per page (1-100). Default: 15.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "amount",
                                    "description": "optional Sort field. One of: date, amount, id, status. Default: date.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "asc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: desc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/combined-records?type=order&status=paid&user_id=42&service_type=group&date_from=2025-08-01&date_to=2025-08-31&search=ORD-12&per_page=20&sort_by=amount&direction=asc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"type\":\"order\",\"status\":\"ullam\",\"user_id\":20,\"service_type\":\"asperiores\",\"date_from\":\"2026-02-26T04:17:46\",\"date_to\":\"2026-02-26T04:17:46\",\"search\":\"error\",\"per_page\":3,\"sort_by\":\"amount\",\"direction\":\"desc\"}"
                        },
                        "description": "Unified paginated list that merges orders, invoices, and subscriptions into a single feed.\nDesigned for admin dashboards where a consolidated financial overview is needed.\n\nNotes:\n- Each record is normalized to a common structure with `type` and `reference` fields to identify the source.\n- The `reference` field uses prefixes: ORD- (orders), INV- (invoices), SUB- (subscriptions) or the subscription nickname.\n- User data is split into three role-based fields: `account`, `lead`, `player`. Only the matching role field is populated; the rest are null.\n- Subscriptions include additional `player`, `service`, `service_id`, and `service_type` fields.\n- Date filters apply differently per type: orders use paid_at\/created_at, invoices use issued_at, subscriptions use last_payment_date\/start_date.\n- The `service_type` filter only applies to subscriptions; orders and invoices are unaffected."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"records\": {\n    \"data\": [\n      {\n        \"id\": 34,\n        \"type\": \"order\",\n        \"status\": \"paid\",\n        \"amount\": \"250.00\",\n        \"currency\": \"USD\",\n        \"date\": \"2025-09-10T14:30:00.000000Z\",\n        \"user_id\": 8,\n        \"school_id\": 1,\n        \"reference\": \"ORD-34\",\n        \"account\": {\"id\": 8, \"name\": \"Maria Lopez\", \"user_name\": \"maria.lopez\"},\n        \"lead\": null,\n        \"player\": null\n      },\n      {\n        \"id\": 21,\n        \"type\": \"invoice\",\n        \"status\": \"pending\",\n        \"amount\": \"120.00\",\n        \"currency\": \"EUR\",\n        \"date\": \"2025-09-15T00:00:00.000000Z\",\n        \"user_id\": 15,\n        \"school_id\": 1,\n        \"reference\": \"INV-21\",\n        \"account\": null,\n        \"lead\": {\"id\": 15, \"name\": \"Carlos Ruiz\", \"user_name\": \"carlos.ruiz\"},\n        \"player\": null\n      },\n      {\n        \"id\": 7,\n        \"type\": \"subscription\",\n        \"status\": \"active\",\n        \"amount\": null,\n        \"currency\": null,\n        \"date\": \"2025-09-01T00:00:00.000000Z\",\n        \"user_id\": 22,\n        \"school_id\": 1,\n        \"reference\": \"Lucas Garcia - Advanced Tennis\",\n        \"service_id\": 5,\n        \"service_type\": \"group\",\n        \"account\": null,\n        \"lead\": null,\n        \"player\": {\"id\": 22, \"name\": \"Lucas Garcia\"},\n        \"service\": {\"id\": 5, \"nickname\": \"Advanced Tennis\", \"type\": \"group\"}\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 15,\n    \"total\": 86,\n    \"last_page\": 6,\n    \"from\": 1,\n    \"to\": 15,\n    \"first_page_url\": \"https:\/\/aleacademy.aleosapp.com\/api\/schools\/elite-tennis-academy\/ecommerce\/combined-records?page=1\",\n    \"last_page_url\": \"https:\/\/aleacademy.aleosapp.com\/api\/schools\/elite-tennis-academy\/ecommerce\/combined-records?page=6\",\n    \"next_page_url\": \"https:\/\/aleacademy.aleosapp.com\/api\/schools\/elite-tennis-academy\/ecommerce\/combined-records?page=2\",\n    \"prev_page_url\": null,\n    \"path\": \"https:\/\/aleacademy.aleosapp.com\/api\/schools\/elite-tennis-academy\/ecommerce\/combined-records\"\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"reference\",\"type\",\"status\",\"amount\",\"currency\",\"date\",\"user_id\",\"school_id\",\"account\",\"lead\",\"player\",\"service\"],\n    \"defaultColumns\": [\"reference\",\"type\",\"status\",\"amount\",\"date\",\"account\",\"lead\",\"player\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 401,
                            "body": "{\"message\": \"Unauthenticated.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"type\": [\"The selected type is invalid.\"],\n    \"per_page\": [\"The per page must be at least 1.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coupons - List coupons in a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/coupons",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Response mode. One of: table, select. Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Items per page (only for table). Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "voluptatum",
                                    "description": "optional Filter set. Each filter has `column`, `operator`, and `value`.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bsearch%5D",
                                    "value": "WELCOME",
                                    "description": "optional Global search across base coupon columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "active",
                                    "description": "Column to filter (base or relation via dot-notation, e.g., creator.name).",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "equals",
                                    "description": "Operator: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "true",
                                    "description": "mixed Value to compare. Use [min,max] for between. For empty\/not_empty, value is ignored.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "name",
                                    "description": "optional Column to sort by (base table only).",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/coupons?view=select&per_page=15&filters[0]=voluptatum&filters%5Bsearch%5D=WELCOME&filters%5B0%5D%5Bcolumn%5D=active&filters%5B0%5D%5Boperator%5D=equals&filters%5B0%5D%5Bvalue%5D=true&sort_by=name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the coupons associated with the given school. Supports filters, sorting, pagination, and a compact select view.\nRequires permission: administrative.ecommerce.coupon.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"coupons\": {\n    \"data\": [\n      {\n        \"id\": 1,\n        \"name\": \"Welcome Discount\",\n        \"code\": \"WELCOME10\",\n        \"type\": \"percentage\",\n        \"value\": \"10.00\",\n        \"currency\": null,\n        \"applies_to\": \"first_payment\",\n        \"max_redemptions\": 100,\n        \"one_per_user\": true,\n        \"starts_at\": \"2025-06-01T00:00:00.000000Z\",\n        \"expires_at\": \"2025-06-30T23:59:59.000000Z\",\n        \"active\": true\n      }\n    ],\n    \"current_page\": 1,\n    \"per_page\": 10,\n    \"total\": 42\n  },\n  \"metadata\": {\n    \"columns\": [\"id\",\"name\",\"code\",\"type\",\"value\",\"currency\",\"applies_to\",\"max_redemptions\",\"one_per_user\",\"starts_at\",\"expires_at\",\"active\",\"created_at\"],\n    \"defaultColumns\": [\"id\",\"name\",\"code\",\"active\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"coupons\": [{\"id\": 1, \"name\": \"Welcome Discount\"}]}\nWhen view=select, returns a flat list of coupons with id and name.",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coupons - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/coupons",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/coupons",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Welcome Discount\",\"code\":\"WELCOME10\",\"type\":\"percentage\",\"value\":15,\"currency\":\"USD\",\"applies_to\":\"both\",\"max_redemptions\":100,\"one_per_user\":true,\"starts_at\":\"2025-06-15 00:00:00\",\"expires_at\":\"2025-07-15 23:59:59\",\"active\":true,\"restrictions\":[\"sed\"]}"
                        },
                        "description": "Create a discount coupon associated with the given school. Coupons can apply to first payments, recurring payments, or both, and can include dynamic restrictions (by Service, SchoolSite, etc.).\n\nRestrictions schema (array-of-objects):\n[\n  {\"model\": \"Service\", \"ids\": [1, 2, 3]},\n  {\"model\": \"SchoolSite\", \"ids\": [4]},\n  {\"model\": \"ServiceCategory\", \"ids\": [5, 6]}\n]\nSemantics: the coupon is valid when the redemption context matches at least one of the listed model\/ids entries (OR). Within an entry, ids is an OR-list for that model.\nNote: Current runtime validation enforces restrictions for model \"Service\". If you plan to restrict by other models, extend the validation accordingly.\nWhen sending multipart\/form-data, send `restrictions` as a JSON string.\nRequires permission: administrative.ecommerce.coupon.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\": \"Coupon created successfully\", \"coupon\": {\"id\": 1, \"code\": \"WELCOME10\", \"type\": \"percentage\", \"value\": 15, \"applies_to\": \"first_payment\", \"active\": true}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"code\": [\"The code has already been taken.\"],\n    \"currency\": [\"The currency field is required when type is fixed.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coupons - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "3",
                                    "description": "The ID of the coupon."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns full details of a coupon by its ID within the given school.\nRequires permission: administrative.ecommerce.coupon.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"coupon\": {\n    \"id\": 3,\n    \"name\": \"Monthly Discount\",\n    \"code\": \"MENSUAL15\",\n    \"type\": \"percentage\",\n    \"value\": 15,\n    \"currency\": \"USD\",\n    \"applies_to\": \"recurring\",\n    \"max_redemptions\": 100,\n    \"one_per_user\": true,\n    \"starts_at\": \"2025-06-01T00:00:00Z\",\n    \"expires_at\": \"2025-12-31T23:59:59Z\",\n    \"active\": true,\n    \"restrictions\": [\n      {\"model\": \"Service\", \"ids\": [5]},\n      {\"model\": \"ServiceCategory\", \"ids\": [6]}\n    ],\n    \"created_at\": \"2025-06-11T20:00:00Z\",\n    \"updated_at\": \"2025-06-11T20:00:00Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Coupon not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coupons - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "The ID of the coupon to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Summer Discount\",\"code\":\"SUMMER25\",\"type\":\"percentage\",\"value\":25,\"currency\":\"USD\",\"applies_to\":\"both\",\"max_redemptions\":100,\"one_per_user\":true,\"starts_at\":\"2025-06-01T00:00:00\",\"expires_at\":\"2025-06-30T23:59:59\",\"active\":true,\"restrictions\":[\"voluptatem\"]}"
                        },
                        "description": "Update an existing coupon in the given school.\nRequires permission: administrative.ecommerce.coupon.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Coupon updated successfully\",\n  \"coupon\": {\n    \"id\": 12,\n    \"name\": \"Summer Discount\",\n    \"code\": \"SUMMER25\",\n    \"type\": \"percentage\",\n    \"value\": 25,\n    \"currency\": null,\n    \"applies_to\": \"both\",\n    \"max_redemptions\": 100,\n    \"one_per_user\": true,\n    \"starts_at\": \"2025-06-01T00:00:00Z\",\n    \"expires_at\": \"2025-06-30T23:59:59Z\",\n    \"active\": true,\n    \"restrictions\": [\n      {\"model\": \"Service\", \"ids\": [5]},\n      {\"model\": \"ServiceCategory\", \"ids\": [6]}\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Coupon not found or unauthorized.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"code\": [\"The code has already been taken.\"],\n    \"currency\": [\"The currency field is required when type is fixed.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coupons - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/coupons\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "7",
                                    "description": "The ID of the coupon."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive a coupon by setting its status to \"archived\". This does not delete the record.\nRequires permission: administrative.ecommerce.coupon.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Coupon archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Coupon not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Checkout - Create Stripe Checkout Session",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/stripe\/checkout\/create",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/stripe\/checkout\/create",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ale-academy",
                                    "description": "The school slug used to scope platform fees and registration fee rules."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"order_id\":123,\"success_url\":\"https:\\\/\\\/myapp.com\\\/checkout\\\/success\",\"cancel_url\":\"https:\\\/\\\/myapp.com\\\/checkout\\\/cancel\",\"confirm\":true}"
                        },
                        "description": "This endpoint creates a Stripe Checkout session for a previously generated order.\nIf the 'confirm' parameter is false, it only returns a preview of the items and total to be paid.\nIf 'confirm' is true, it creates the Stripe session and returns the payment URL."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"checkout_url\": \"https:\/\/checkout.stripe.com\/c\/pay\/cs_test_...\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"items\": [\n    {\n      \"name\": \"Gold Plan\",\n      \"description\": \"Monthly training plan\",\n      \"amount\": 99.0,\n      \"quantity\": 1,\n      \"original_amount\": 99.0,\n      \"discount_applied\": 0,\n      \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    },\n    {\n      \"name\": \"John Doe - Registration Fee\",\n      \"description\": \"Registration Fee\",\n      \"amount\": 25.0,\n      \"quantity\": 1,\n      \"original_amount\": 25.0,\n      \"discount_applied\": 0,\n      \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    },\n    {\n      \"name\": \"Platform Fee\",\n      \"description\": \"Platform fee for this order\",\n      \"amount\": 3.5,\n      \"quantity\": 1,\n      \"original_amount\": 3.5,\n      \"discount_applied\": 0,\n      \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    }\n  ],\n  \"total\": 127.5\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\n  \"message\": \"Unauthorized\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n  \"message\": \"Not Found\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"order_id\": [\n      \"The order id field is required.\"\n    ]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Checkout - Create Stripe Checkout Session for Multiple Orders",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/ecommerce\/stripe\/checkout\/create\/multi-order",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/ecommerce\/stripe\/checkout\/create\/multi-order",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ale-academy",
                                    "description": "The school slug used to scope platform fees and registration fee rules."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"order_ids\":[1,2,3],\"success_url\":\"https:\\\/\\\/example.com\\\/success\",\"cancel_url\":\"https:\\\/\\\/example.com\\\/cancel\",\"confirm\":true}"
                        },
                        "description": "This endpoint creates a single Stripe Checkout session that includes multiple pending orders from the authenticated user.\nIf the 'confirm' parameter is false, it only returns a preview of the items and total to be paid.\nIf 'confirm' is true, it creates the Stripe session and returns the payment URL."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"checkout_url\": \"https:\/\/checkout.stripe.com\/pay\/cs_test_...\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"items\": [\n    {\n      \"name\": \"Gold Plan\",\n      \"description\": \"Monthly training plan\",\n      \"amount\": 99.0,\n      \"quantity\": 1,\n      \"original_amount\": 99.0,\n      \"discount_applied\": 0,\n      \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    },\n    {\n      \"name\": \"Silver Plan\",\n      \"description\": \"Bi-weekly training plan\",\n      \"amount\": 59.0,\n      \"quantity\": 1,\n      \"original_amount\": 59.0,\n      \"discount_applied\": 10.0,\n      \"discount_currency\": \"USD\",\n      \"has_discount\": true,\n      \"coupon_code\": \"WELCOME10\"\n    },\n    {\n      \"name\": \"Jane Smith - Registration Fee\",\n      \"description\": \"Registration Fee\",\n      \"amount\": 25.0,\n      \"quantity\": 1,\n      \"original_amount\": 25.0,\n       \"discount_applied\": 0,\n       \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    },\n    {\n      \"name\": \"Platform Fee\",\n      \"description\": \"Platform Fee\",\n      \"amount\": 6.5,\n      \"quantity\": 1,\n      \"original_amount\": 6.5,\n       \"discount_applied\": 0,\n       \"discount_currency\": null,\n      \"has_discount\": false,\n      \"coupon_code\": null\n    }\n  ],\n  \"total\": 189.5\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\n  \"message\": \"No line items to pay.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\n  \"message\": \"Unauthorized\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n  \"message\": \"No valid orders found.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"order_ids\": [\n      \"The order ids field is required.\"\n    ],\n    \"success_url\": [\n      \"The success url field is required.\"\n    ],\n    \"cancel_url\": [\n      \"The cancel url field is required.\"\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"Please reduce the number of orders.\",\n  \"metadata_length\": 812\n}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Endpoints",
            "description": "",
            "item": [
                {
                    "name": "POST api\/stripe\/webhook",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/stripe\/webhook",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/stripe\/webhook"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": []
                },
                {
                    "name": "Update the specified resource in storage.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "nihil",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "ut",
                                    "description": "The ID of the coach."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": []
                },
                {
                    "name": "Display a listing of the resource.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "culpa",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Remove the specified resource from storage.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/calendar\/sessions\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "dolorem",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "et",
                                    "description": "The ID of the session."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": []
                },
                {
                    "name": "Remove the specified resource from storage.",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "quia",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the evaluation template."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": []
                }
            ]
        },
        {
            "name": "General",
            "description": "",
            "item": [
                {
                    "name": "File upload",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/upload",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/upload",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "vel",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The school id used to scope the operation."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "module",
                                    "value": "exercises",
                                    "type": "text",
                                    "description": "Module where the file will be stored. Allowed examples: `exercises`, `skills`, `skillCategories`."
                                },
                                {
                                    "key": "entity_id",
                                    "value": "10",
                                    "type": "text",
                                    "description": "ID of the target entity the file will be attached to."
                                },
                                {
                                    "key": "file",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Uploads a file for a given module\/entity within the specified school scope and creates a polymorphic\n`media` record on the target entity. The authenticated user must belong to the `school` provided in the route."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n   \"message\": \"File uploaded successfully\",\n   \"file_url\": \"https:\/\/s3-bucket-url.com\/exercises\/10\/media\/filename.jpg\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Entity not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{ \"message\": \"Invalid module or validation failed\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"message\": \"File upload failed\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "General - List tenant models (select-friendly)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/models\/list",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/models\/list",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "voluptas",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Scans the tenant models directory (app\/Models\/Tenant) for PHP classes, includes only those that exist\nand extend Illuminate\\Database\\Eloquent\\Model, and returns them as select-friendly options. Discovery is\nnon-recursive. Results are sorted alphabetically. Any authenticated user may call this endpoint."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"models\": [\n    {\"label\": \"School\", \"value\": \"School\"},\n    {\"label\": \"Subscription\", \"value\": \"Subscription\"},\n    {\"label\": \"User\", \"value\": \"User\"}\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"models\": []}",
                            "name": "No models found"
                        },
                        {
                            "header": [],
                            "code": 401,
                            "body": "{\"message\": \"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "General - Model options (id, name)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/models\/options",
                            "query": [
                                {
                                    "key": "model",
                                    "value": "Coach",
                                    "description": "Model name e.g. Coach, Location, SchoolSite, User.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/models\/options?model=Coach",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "dolorum",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns select-friendly options for a given model name.\nSpecial case: model=Coach returns Users with coach role scoped to the school.\nOther models are resolved under App\\Models\\Tenant and filtered by school when applicable."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"options\": [ {\"id\": 1, \"name\": \"John Doe\"} ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"Invalid model\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Notes - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/notes",
                            "query": [
                                {
                                    "key": "model",
                                    "value": "User",
                                    "description": "The target model name or FQCN. Only \"User\" is supported. If a simple name is provided, it's resolved under App\\\\Models\\\\Tenant.",
                                    "disabled": false
                                },
                                {
                                    "key": "model_id",
                                    "value": "42",
                                    "description": "The target model id.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "10",
                                    "description": "optional Records per page. Default: 10.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/notes?model=User&model_id=42&per_page=10",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List paginated notes attached to a target model within the current school. Only the User model is\ncurrently supported. Notes with status = archived are excluded by default. Results are ordered with\npinned notes first and newest notes first thereafter.\n\nPermissions: administrative.general.notes.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"notes\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 12,\n        \"school_id\": 3,\n        \"noteable_type\": \"App\\\\Models\\\\Tenant\\\\User\",\n        \"noteable_id\": 42,\n        \"author_id\": 7,\n        \"actor_name\": \"Admin User\",\n        \"actor_roles\": [\"administrator\"],\n        \"actor_primary_role\": \"administrator\",\n        \"title\": \"Seguimiento\",\n        \"body\": \"Llamada reprogramada para el viernes.\",\n        \"visibility\": \"internal\",\n        \"is_pinned\": false,\n        \"tags\": [\"follow-up\"],\n        \"meta\": {\"subject_role\": \"Player\", \"subject_status_id\": 3, \"subject_status_name\": \"Active\"},\n        \"status\": \"active\",\n        \"created_at\": \"2025-10-15T12:00:00Z\",\n        \"updated_at\": \"2025-10-15T12:10:00Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 1\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"notes\": {\"current_page\": 1, \"data\": [], \"per_page\": 10, \"total\": 0}}",
                            "name": "Empty result"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"Invalid model provided\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"Only User model is supported for notes\"}",
                            "name": "Unsupported model"
                        }
                    ]
                },
                {
                    "name": "Notes - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/notes",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/notes",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "odio",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"model\":\"User\",\"model_id\":42,\"title\":\"Llamada de seguimiento\",\"body\":\"Se acord\u00f3 llamada el viernes.\",\"visibility\":\"internal\",\"tags\":[\"follow-up\",\"billing\"],\"is_pinned\":true,\"meta\":{\"context\":\"phone\"}}"
                        },
                        "description": "Create a note attached to a target (currently only User) within the current school.\nThe author's roles and the target user's role\/status are snapshotted into note.meta.\nPermissions: administrative.general.notes.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\": \"Note created\", \"note\": {\"id\": 12, \"title\": \"Llamada de seguimiento\", \"visibility\": \"internal\", \"is_pinned\": false, \"tags\": [\"follow-up\"], \"meta\": {\"subject_role\": \"Player\", \"subject_status_id\": 3, \"subject_status_name\": \"Active\"}}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Target model not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"Only User model is supported for notes\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Notes - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/notes\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/notes\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "elite-tennis-academy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "The note id."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a single note by id, scoped to the current school.\nPermissions: administrative.general.notes.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"note\": {\"id\": 12, \"title\": \"Seguimiento\", \"body\": \"Llamada reprogramada para el viernes.\", \"visibility\": \"internal\", \"is_pinned\": false, \"tags\": [\"follow-up\"], \"meta\": {\"subject_role\": \"Player\"}}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Note not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Notes - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/notes\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/notes\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "eligendi",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "Note id."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"title\":\"Seguimiento actualizado\",\"body\":\"Se reagend\u00f3 al lunes.\",\"visibility\":\"internal\",\"tags\":[\"follow-up\"],\"is_pinned\":true,\"meta\":{\"context\":\"phone\"}}"
                        },
                        "description": "Update an existing note within the current school.\nPermissions: administrative.general.notes.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Note updated\", \"note\": {\"id\": 12, \"title\": \"Seguimiento actualizado\", \"is_pinned\": true}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Note not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Notes - Archive (soft delete)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/notes\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/notes\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "et",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "12",
                                    "description": "Note id."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive a note (status = archived) within the current school scope. The record is not removed and will be excluded from listings."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Note archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\": \"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Note not found or unauthorized.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Colors - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/colors",
                            "query": [
                                {
                                    "key": "colorable_type",
                                    "value": "location",
                                    "description": "Target model type. One of: user, coach, location, school_site.",
                                    "disabled": false
                                },
                                {
                                    "key": "colorable_id",
                                    "value": "17",
                                    "description": "The ID of the target record.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/colors?colorable_type=location&colorable_id=17",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school (tenant scope)."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"colorable_type\":\"quos\",\"colorable_id\":1}"
                        },
                        "description": "Retrieves the color assigned to a target model (if any). Returns null in `color` when the target has no\ncolor assigned."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"color\": {\"id\": 15, \"hex\": \"#00AAFF\", \"name\": null, \"colorable_type\": \"App\\\\\\Models\\\\\\Tenant\\\\\\Location\", \"colorable_id\": 17, \"school_id\": 3}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"color\": null}",
                            "name": "No color assigned"
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Colorable not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Colors - Set\/Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/colors",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/colors",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school (tenant scope)."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"colorable_type\":\"coach\",\"colorable_id\":42,\"hex\":\"#FFAA00\",\"name\":\"Primary Coach Color\"}"
                        },
                        "description": "Creates or updates a color assignment for a target model using a polymorphic relation. Supports\nuser\/coach, location, and school_site. If a color already exists for the target, it will be updated;\notherwise it will be created. One color per record is enforced."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Color saved\",\n  \"color\": {\"id\": 10, \"name\": \"Primary Coach Color\", \"hex\": \"#FFAA00\", \"colorable_type\": \"App\\\\\\Models\\\\\\Tenant\\\\\\User\", \"colorable_id\": 42, \"school_id\": 3}\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Colorable not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"The given data was invalid.\", \"errors\": {\"hex\": [\"The hex format is invalid.\"]}}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Colors - Delete",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/colors",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/colors",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school (tenant scope)."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"colorable_type\":\"school_site\",\"colorable_id\":9}"
                        },
                        "description": "Removes the color assignment for a target model. If the target has no color, the operation is treated as\nsuccessful (idempotent)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\": \"Color removed\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Colorable not found\"}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Global Search",
            "description": "",
            "item": [
                {
                    "name": "Global Search - Multi-bucket \/ model search",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/search",
                            "query": [
                                {
                                    "key": "q",
                                    "value": "%22andres%22",
                                    "description": "Search term. Minimum length: 2.",
                                    "disabled": false
                                },
                                {
                                    "key": "buckets[0]",
                                    "value": "players",
                                    "description": "optional List of bucket names to search (e.g. [\"players\",\"coaches\"]).",
                                    "disabled": false
                                },
                                {
                                    "key": "buckets[1]",
                                    "value": "coaches",
                                    "description": "optional List of bucket names to search (e.g. [\"players\",\"coaches\"]).",
                                    "disabled": false
                                },
                                {
                                    "key": "buckets.%2A",
                                    "value": "%22players%22",
                                    "description": "Bucket name.",
                                    "disabled": false
                                },
                                {
                                    "key": "model_names[0]",
                                    "value": "School",
                                    "description": "optional Simple model names to search (mapped via config).",
                                    "disabled": false
                                },
                                {
                                    "key": "model_names[1]",
                                    "value": "Group",
                                    "description": "optional Simple model names to search (mapped via config).",
                                    "disabled": false
                                },
                                {
                                    "key": "model_names.%2A",
                                    "value": "%22School%22",
                                    "description": "Simple model name.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_bucket",
                                    "value": "10",
                                    "description": "optional Results per bucket (min:1, max:50).",
                                    "disabled": false
                                },
                                {
                                    "key": "per_model",
                                    "value": "5",
                                    "description": "optional Results per model (min:1, max:50).",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/search?q=%22andres%22&buckets[0]=players&buckets[1]=coaches&buckets.%2A=%22players%22&model_names[0]=School&model_names[1]=Group&model_names.%2A=%22School%22&per_bucket=10&per_model=5",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "sit",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Performs a global search across permitted buckets and models, returning grouped results.\nThe `model_names` parameter accepts simple class names (e.g. \"School\") which are mapped to\nfully-qualified class names defined in `config('search.models')` (case-insensitive)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"players\": [{\"id\":1,\"name\":\"Andres\"}],\n  \"coaches\": [{\"id\":2,\"name\":\"Maria\"}]\n}",
                            "name": "success"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{ \"message\": \"Validation error\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Global Search - Metadata",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/general\/search\/meta",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/general\/search\/meta",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ratione",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns metadata describing which buckets and models are available for global search.\nUse this to populate filters\/UI before calling the search endpoint."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"buckets\": [\"players\", \"coaches\", \"schools\"],\n  \"models\": [\"App\\\\Models\\\\Tenant\\\\School\", \"App\\\\Models\\\\Tenant\\\\User\"]\n}",
                            "name": "success"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Performance",
            "description": "",
            "item": [
                {
                    "name": "Skill Categories - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skill-categories",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only categories with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by when filters are applied. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction when filters are applied. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "quisquam",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "archived",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skill-categories?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=quisquam&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=archived",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope categories."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns skill categories scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.performance.skillCategory.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"categories\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Technical Skills\",\n        \"description\": \"Technical abilities required for performance.\",\n        \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n        \"level\": { \"id\": 3, \"nickname\": \"Advanced\", \"learningStage\": { \"id\": 1, \"nickname\": \"U12\" } },\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 30\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"school.nickname\", \"level.nickname\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"categories\": [\n    { \"id\": 1, \"nickname\": \"Technical Skills\" },\n    { \"id\": 2, \"nickname\": \"Tactical Skills\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skill Categories - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skill-categories",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skill-categories",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school where the category will be created."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Technical Skills\",\"description\":\"Skills related to technical aspects.\",\"level_id\":3}"
                        },
                        "description": "Creates a new skill category scoped to the given school. Required permission: administrative.performance.skillCategory.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Skill category created successfully\",\n  \"category\": {\n    \"id\": 1,\n    \"nickname\": \"Technical Skills\",\n    \"description\": \"Skills related to technical aspects.\",\n    \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n    \"level\": { \"id\": 3, \"nickname\": \"Advanced\", \"learningStage\": { \"id\": 1, \"nickname\": \"U12\" } },\n    \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname has already been taken.\"],\n    \"level_id\": [\"The selected level id is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skill Categories - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the category."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill category to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single skill category scoped to the given school, including school, level (with learningStage), and skills.\nRequired permission: administrative.performance.skillCategory.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1,\n  \"nickname\": \"Technical Skills\",\n  \"description\": \"Skills related to technical aspects.\",\n  \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n  \"level\": { \"id\": 3, \"nickname\": \"Advanced\", \"learningStage\": { \"id\": 1, \"nickname\": \"U12\" } },\n  \"skills\": [\n    { \"id\": 10, \"nickname\": \"Dribbling\" },\n    { \"id\": 11, \"nickname\": \"Passing\" }\n  ],\n  \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n  \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill category not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skill Categories - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the category."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill category to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Technical Skills\",\"description\":\"Updated description.\",\"level_id\":3}"
                        },
                        "description": "Updates a skill category scoped to the given school. Partial updates are supported.\nRequired permission: administrative.performance.skillCategory.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Skill category updated successfully\",\n  \"category\": {\n    \"id\": 1,\n    \"nickname\": \"Technical Skills\",\n    \"description\": \"Updated description.\",\n    \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n    \"level\": { \"id\": 3, \"nickname\": \"Advanced\" },\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:30:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill category not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname has already been taken.\"],\n    \"level_id\": [\"The selected level id is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skill Categories - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skill-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the category."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill category to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archives a skill category by setting status=archived. Data is not deleted. Required permission: administrative.performance.skillCategory.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Skill category archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill category not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Measurement Criteria - List criteria",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/measurement-criteria",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only criteria with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by when filters are applied. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction when filters are applied. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "labore",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "archived",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/measurement-criteria?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=labore&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=archived",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school context."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns measurement criteria with optional relations. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.performance.measurementCriteria.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"measurement_criteria\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Speed\",\n        \"description\": \"Measurement based on velocity\",\n        \"measurement_units\": [\n          { \"id\": 1, \"nickname\": \"km\/h\", \"description\": \"Kilometers per hour\" },\n          { \"id\": 2, \"nickname\": \"mph\", \"description\": \"Miles per hour\" }\n        ],\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 20\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"creator.name\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"measurement_criteria\": [\n    { \"id\": 1, \"nickname\": \"Speed\" },\n    { \"id\": 2, \"nickname\": \"Endurance\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Measurement Criteria - Units by nickname",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/measurement-criteria\/units\/:nickname",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/measurement-criteria\/units\/:nickname",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school context."
                                },
                                {
                                    "id": "nickname",
                                    "key": "nickname",
                                    "value": "speed",
                                    "description": "The nickname of the measurement criteria."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a measurement criteria by its nickname within the given school, including all associated measurement units.\nRequired permission: administrative.performance.measurementCriteria.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"measurement_criteria\": {\n    \"id\": 3,\n    \"nickname\": \"Speed\",\n    \"description\": \"Measurement based on velocity\",\n    \"measurement_units\": [\n      { \"id\": 1, \"nickname\": \"km\/h\", \"description\": \"Kilometers per hour\" },\n      { \"id\": 2, \"nickname\": \"mph\", \"description\": \"Miles per hour\" }\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Measurement Criteria not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skills - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skills",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only skills with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by when filters are applied. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction when filters are applied. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "aut",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "archived",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skills?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=aut&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=archived",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope skills."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns skills scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.performance.skill.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"skills\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Dribbling\",\n        \"description\": \"A key skill in soccer.\",\n        \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n        \"skill_category\": { \"id\": 1, \"nickname\": \"Technical Skills\" },\n        \"measurement_criteria\": { \"id\": 1, \"nickname\": \"Speed\" },\n        \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n        \"status\": \"active\",\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 30\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"school.nickname\", \"skillCategory.nickname\", \"measurement_criteria.nickname\", \"creator.name\", \"status\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"skills\": [\n    { \"id\": 1, \"nickname\": \"Dribbling\" },\n    { \"id\": 2, \"nickname\": \"Passing\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skills - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skills",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skills",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school where the skill will be created."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Dribbling\",\"description\":\"A key skill in soccer.\",\"measurement_criteria_id\":1,\"skill_category_id\":1,\"status\":\"active\",\"level_ids\":[2,3]}"
                        },
                        "description": "Creates a new skill scoped to the given school. Required permission: administrative.performance.skill.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Skill created successfully\",\n  \"skill\": {\n    \"id\": 1,\n    \"nickname\": \"Dribbling\",\n    \"description\": \"A key skill in soccer.\",\n    \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n    \"skill_category\": { \"id\": 1, \"nickname\": \"Technical Skills\" },\n    \"measurement_criteria\": { \"id\": 1, \"nickname\": \"Speed\" },\n    \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n    \"status\": \"active\",\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"This nickname already exists in the system.\"],\n    \"measurement_criteria_id\": [\"The selected measurement_criteria_id does not exist.\"],\n    \"skill_category_id\": [\"The selected skill_category_id does not exist.\"],\n    \"status\": [\"The status must be one of the following: active, inactive, archived.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skills - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skills\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skills\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the skill."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single skill scoped to the given school, including school, skill category, creator,\nand measurement criteria. Required permission: administrative.performance.skill.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1,\n  \"nickname\": \"Dribbling\",\n  \"description\": \"A key skill in soccer.\",\n  \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n  \"skill_category\": { \"id\": 1, \"nickname\": \"Technical Skills\" },\n  \"measurement_criteria\": { \"id\": 1, \"nickname\": \"Speed\" },\n  \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n  \"status\": \"active\",\n  \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n  \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skills - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skills\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skills\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the skill."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Dribbling\",\"description\":\"Updated description.\",\"measurement_criteria_id\":1,\"skill_category_id\":1,\"status\":\"active\",\"level_ids\":[2,3]}"
                        },
                        "description": "Updates a skill scoped to the given school. Partial updates are supported.\nRequired permission: administrative.performance.skill.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Skill updated successfully\",\n  \"skill\": {\n    \"id\": 1,\n    \"nickname\": \"Dribbling\",\n    \"description\": \"Updated description.\",\n    \"school\": { \"id\": 2, \"nickname\": \"Wildcats Academy\" },\n    \"skill_category\": { \"id\": 1, \"nickname\": \"Technical Skills\" },\n    \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n    \"status\": \"active\",\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:30:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The skill nickname must be unique.\"],\n    \"skill_category_id\": [\"The selected skill category does not exist.\"],\n    \"measurement_criteria_id\": [\"The selected measurement criteria does not exist.\"],\n    \"status\": [\"The status must be either active, inactive, or archived.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Skills - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/skills\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/skills\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the skill."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the skill to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archives a skill by setting status=archived. Data is not deleted. Required permission: administrative.performance.skill.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Skill archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Skill not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Exercises - List exercises for a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/exercises",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only exercises with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by when filters are applied. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction when filters are applied. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "quos",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5Bskill_id%5D",
                                    "value": "3",
                                    "description": "Filter exercises related to a specific skill ID.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/exercises?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=quos&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive&filters%5Bskill_id%5D=3",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope exercises."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns exercises scoped to the given school. Supports table view (paginated with metadata)\nor select view (lightweight id\/nickname list). Required permission: administrative.performance.exercise.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"exercises\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 10,\n        \"nickname\": \"Sprint Training\",\n        \"description\": \"Speed and endurance training.\",\n        \"level\": { \"id\": 2, \"nickname\": \"Advanced\" },\n        \"measurement_criteria\": { \"id\": 1, \"nickname\": \"Speed\" },\n        \"status\": \"active\",\n        \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n        \"skills\": [ { \"id\": 3, \"nickname\": \"Speed Control\" } ],\n        \"media\": [ { \"path\": \"https:\/\/s3...\/exercise123.jpg\", \"mime_type\": \"image\/jpeg\" } ],\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"status\", \"level.nickname\", \"creator.name\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"exercises\": [\n    { \"id\": 10, \"nickname\": \"Sprint Training\" },\n    { \"id\": 11, \"nickname\": \"Agility Ladder\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Exercises - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/exercises",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/exercises",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to associate the exercise with."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Sprint Training\",\"description\":\"Speed and endurance training.\",\"level_ids\":[2,3],\"skills\":[3,5,8],\"measurement_criteria_id\":1,\"media\":null}"
                        },
                        "description": "Create a new exercise for the given school. Attaches optional skills and uploads optional media files.\nRequired permission: administrative.performance.exercise.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Exercise created successfully\",\n  \"exercise\": {\n    \"id\": 10,\n    \"nickname\": \"Sprint Training\",\n    \"description\": \"Speed and endurance training.\",\n    \"level\": { \"id\": 2, \"nickname\": \"Advanced\" },\n    \"measurement_criteria_id\": 1,\n    \"creator_id\": 5,\n    \"school_id\": 3,\n    \"media\": [ { \"path\": \"https:\/\/s3...\/exercise123.jpg\", \"mime_type\": \"image\/jpeg\" } ],\n    \"skills\": [ { \"id\": 3, \"nickname\": \"Speed Control\" }, { \"id\": 5, \"nickname\": \"Endurance\" } ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"level_id\": [\"The selected level_id is invalid.\"],\n    \"measurement_criteria_id\": [\"The selected measurement_criteria_id is invalid.\"],\n    \"skills.0\": [\"The selected skills.0 is invalid.\"],\n    \"media.0\": [\"The media.0 must be a file.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Exercises - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the exercise to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a single exercise by ID within the given school, including level, skills, media, measurement criteria,\nand creator information. Required permission: administrative.performance.exercise.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 10,\n  \"nickname\": \"Sprint Training\",\n  \"description\": \"Speed and endurance training.\",\n  \"level\": { \"id\": 2, \"nickname\": \"Advanced\" },\n  \"measurement_criteria\": { \"id\": 1, \"nickname\": \"Speed\" },\n  \"status\": \"active\",\n  \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n  \"skills\": [ { \"id\": 3, \"nickname\": \"Speed Control\" }, { \"id\": 5, \"nickname\": \"Endurance\" } ],\n  \"media\": [ { \"path\": \"https:\/\/s3...\/exercise123.jpg\", \"mime_type\": \"image\/jpeg\" } ],\n  \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n  \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Exercise not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Exercises - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the exercise to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Sprint Training\",\"description\":\"Speed and endurance training.\",\"level_ids\":[2,3],\"skills\":[3,5,8],\"measurement_criteria_id\":1,\"media_ids\":[1,2],\"media\":null}"
                        },
                        "description": "Update an existing exercise within the given school, including details, skills, and media. If media_ids\nis provided, only those media records are kept; any others are deleted. If media_ids is omitted, all\nexisting media are removed. Required permission: administrative.performance.exercise.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Exercise updated successfully\",\n  \"exercise\": {\n    \"id\": 10,\n    \"nickname\": \"Sprint Training\",\n    \"description\": \"Speed and endurance training.\",\n    \"level\": { \"id\": 2, \"nickname\": \"Advanced\" },\n    \"creator\": { \"id\": 5, \"name\": \"Admin User\" },\n    \"media\": [ { \"id\": 1, \"path\": \"https:\/\/s3...\/exercise123.jpg\", \"mime_type\": \"image\/jpeg\" } ],\n    \"skills\": [ { \"id\": 3, \"nickname\": \"Speed Control\" }, { \"id\": 5, \"nickname\": \"Endurance\" } ],\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Exercise not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname has already been taken.\"],\n    \"level_id\": [\"The selected level_id is invalid.\"],\n    \"measurement_criteria_id\": [\"The selected measurement_criteria_id is invalid.\"],\n    \"skills.0\": [\"The selected skills.0 is invalid.\"],\n    \"media.0\": [\"The media.0 must be a file.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Exercises - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/exercises\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the exercise to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive an exercise by setting its status to archived. This does not permanently delete the record.\nRequired permission: administrative.performance.exercise.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Exercise archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Exercise not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluation Templates - List templates for a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/evaluation-templates",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only templates with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by when filters are applied. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction when filters are applied. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "harum",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/evaluation-templates?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=harum&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope templates."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns evaluation templates scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.performance.evaluationTemplate.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"templates\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 5,\n        \"nickname\": \"Speed Training Plan\",\n        \"description\": \"A structured plan for sprint performance improvement.\",\n        \"level\": { \"id\": 2, \"name\": \"Advanced\" },\n        \"status\": \"active\",\n        \"creator\": { \"id\": 7, \"name\": \"Admin User\" },\n        \"skills\": [ { \"id\": 3, \"nickname\": \"Acceleration\" } ],\n        \"exercises\": [ { \"id\": 10, \"nickname\": \"Sprint Drills\" } ],\n        \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n        \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 25\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"status\", \"level.name\", \"creator.name\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"templates\": [\n    { \"id\": 5, \"nickname\": \"Speed Training Plan\" },\n    { \"id\": 6, \"nickname\": \"Endurance Block\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluation Templates - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/evaluation-templates",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/evaluation-templates",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to associate the template with."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Speed Training\",\"description\":\"A training plan for sprint performance.\",\"level_id\":2,\"status\":\"active\",\"skills\":[1,2,3],\"exercises\":[10,15,22]}"
                        },
                        "description": "Create a new evaluation template for the given school. Required permission: administrative.performance.evaluationTemplate.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Evaluation template created successfully\",\n  \"template\": {\n    \"id\": 5,\n    \"nickname\": \"Speed Training\",\n    \"description\": \"A training plan for sprint performance.\",\n    \"level\": { \"id\": 2, \"name\": \"Advanced\" },\n    \"status\": \"active\",\n    \"school_id\": 3,\n    \"creator\": { \"id\": 7, \"name\": \"Admin User\" },\n    \"skills\": [ { \"id\": 1, \"nickname\": \"Acceleration\" } ],\n    \"exercises\": [ { \"id\": 10, \"nickname\": \"Sprint Drills\" } ],\n    \"created_at\": \"2025-03-10T12:00:00.000000Z\",\n    \"updated_at\": \"2025-03-10T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"level_id\": [\"The selected level_id is invalid.\"],\n    \"status\": [\"The status must be one of active, inactive, archived.\"],\n    \"skills.0\": [\"The selected skills.0 is invalid.\"],\n    \"exercises.0\": [\"The selected exercises.0 is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluation Templates - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The template ID."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a single evaluation template by ID within the given school. Combines skills and exercises under items,\nincluding each item's calculated percentage and measurement criteria. Required permission: administrative.performance.evaluationTemplate.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"template\": {\n    \"id\": 5,\n    \"nickname\": \"Speed Training Plan\",\n    \"description\": \"A structured plan for sprint performance improvement.\",\n    \"level\": { \"id\": 2, \"name\": \"Advanced\" },\n    \"status\": \"active\",\n    \"creator\": { \"id\": 7, \"name\": \"Admin User\" },\n    \"items\": [\n      {\n        \"type\": \"skill\",\n        \"id\": 3,\n        \"nickname\": \"Acceleration\",\n        \"percentage\": 50,\n        \"measurementCriteria\": [\n          {\n            \"id\": 1,\n            \"nickname\": \"Max Speed\",\n            \"measurementUnits\": [ { \"id\": 1, \"nickname\": \"km\/h\" } ]\n          }\n        ]\n      },\n      {\n        \"type\": \"exercise\",\n        \"id\": 10,\n        \"nickname\": \"Sprint Drills\",\n        \"percentage\": 50,\n        \"measurementCriteria\": []\n      }\n    ],\n    \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Evaluation template not found or not associated with this school\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Evaluation Templates - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/performance\/evaluation-templates\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The template ID to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Sprint Performance Plan\",\"description\":\"A structured plan for speed improvement.\",\"level_id\":2,\"status\":\"active\",\"skills\":[1,2,3],\"exercises\":[10,15,22]}"
                        },
                        "description": "Update an existing template within the given school. Required permission: administrative.performance.evaluationTemplate.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Evaluation template updated successfully\",\n  \"template\": {\n    \"id\": 5,\n    \"nickname\": \"Sprint Performance Plan\",\n    \"description\": \"A structured plan for speed improvement.\",\n    \"level\": { \"id\": 2, \"name\": \"Advanced\" },\n    \"status\": \"active\",\n    \"creator\": { \"id\": 7, \"name\": \"Admin User\" },\n    \"skills\": [ { \"id\": 3, \"nickname\": \"Acceleration\" } ],\n    \"exercises\": [ { \"id\": 10, \"nickname\": \"Sprint Drills\" } ],\n    \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Evaluation template not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"level_id\": [\"The selected level_id is invalid.\"],\n    \"status\": [\"The status must be one of active, inactive, archived.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Report",
            "description": "",
            "item": [
                {
                    "name": "Generate report (sync)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/generate",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/generate",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "at",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"type\":\"coach_productivity\",\"reference_id\":\"all\",\"start_date\":\"2026-01-01\",\"end_date\":\"2026-01-31\",\"evaluation_type\":\"group\",\"force_refresh\":false}"
                        },
                        "description": "Generates a report immediately and stores it in the reports registry.\nIf a matching report (same type, reference, range and calculation version) already exists,\nthe existing report can be returned unless `force_refresh=true`."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Report generated\",\n  \"report\": {\n    \"id\": 184,\n    \"name\": null,\n    \"report_type\": \"coach_productivity\",\n    \"canonical_report_type\": \"coach_productivity\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"coach\",\n    \"school_id\": 1,\n    \"date_range_start\": \"2026-01-01T00:00:00.000000Z\",\n    \"date_range_end\": \"2026-01-31T00:00:00.000000Z\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"coach\",\n        \"start_date\": \"2026-01-01\",\n        \"end_date\": \"2026-01-31\",\n        \"period_days\": 31\n      },\n      \"summary\": {\n        \"coaches_count\": 4,\n        \"sessions_total\": 42,\n        \"sessions_operational\": 39,\n        \"sessions_worked\": 31,\n        \"sessions_pending_attendance\": 8,\n        \"sessions_canceled\": 3,\n        \"worked_hours\": 58.5,\n        \"pending_hours\": 12.5,\n        \"avg_players_per_hour\": 2.67,\n        \"avg_active_players_per_hour\": 2.24,\n        \"occupancy_rate_percent\": 78.2,\n        \"schedule_utilization_percent\": 64.1,\n        \"productivity_index_percent\": 50.13\n      },\n      \"schedule\": {\n        \"range_expected_minutes\": 5940,\n        \"range_expected_hours\": 99,\n        \"weekly_slots\": [\n          {\n            \"day_of_week\": \"monday\",\n            \"start_time\": \"14:00\",\n            \"end_time\": \"17:00\",\n            \"duration_minutes\": 180,\n            \"expected_minutes_in_range\": 720,\n            \"coach_id\": 11,\n            \"coach_name\": \"Coach One\"\n          }\n        ]\n      },\n      \"distributions\": {\n        \"sessions_by_status\": {\"completed\": 39, \"canceled\": 3},\n        \"sessions_by_type\": {\"private\": 10, \"semi-private\": 14, \"group\": 18},\n        \"attendance_by_status\": {\"present\": 156, \"absent\": 22, \"excused\": 8}\n      },\n      \"breakdown_by_group\": [\n        {\n          \"group_id\": 19,\n          \"group_name\": \"Group A\",\n          \"sessions_total\": 16,\n          \"sessions_worked\": 12,\n          \"sessions_pending_attendance\": 3\n        }\n      ],\n      \"breakdown_by_location\": [\n        {\n          \"location_id\": 3,\n          \"location_name\": \"Court A\",\n          \"sessions_total\": 22,\n          \"sessions_worked\": 16,\n          \"sessions_pending_attendance\": 5\n        }\n      ],\n      \"session_details\": [\n        {\n          \"id\": 901,\n          \"date\": \"2026-01-12\",\n          \"type\": \"group\",\n          \"status\": \"completed\",\n          \"attendance_taken\": true,\n          \"worked_minutes\": 60,\n          \"pending_minutes\": 0\n        }\n      ],\n      \"coaches\": [\n        {\n          \"coach_id\": 11,\n          \"coach_name\": \"Coach One\",\n          \"schedule\": {\n            \"range_expected_minutes\": 2340,\n            \"range_expected_hours\": 39,\n            \"weekly_slots\": [\n              {\"day_of_week\": \"monday\", \"start_time\": \"14:00\", \"end_time\": \"17:00\", \"duration_minutes\": 180}\n            ]\n          },\n          \"summary\": {\n            \"sessions_total\": 20,\n            \"sessions_operational\": 18,\n            \"sessions_worked\": 14,\n            \"sessions_pending_attendance\": 4,\n            \"sessions_canceled\": 2,\n            \"worked_hours\": 24.75,\n            \"pending_hours\": 5.5,\n            \"avg_players_per_hour\": 2.5,\n            \"occupancy_rate_percent\": 81.43,\n            \"schedule_utilization_percent\": 69.12,\n            \"productivity_index_percent\": 56.27\n          },\n          \"breakdown_by_group\": [\n            {\"group_id\": 19, \"group_name\": \"Group A\", \"sessions_total\": 10, \"sessions_worked\": 8}\n          ],\n          \"breakdown_by_location\": [\n            {\"location_id\": 3, \"location_name\": \"Court A\", \"sessions_total\": 12, \"sessions_worked\": 9}\n          ],\n          \"session_details\": [\n            {\"id\": 901, \"date\": \"2026-01-12\", \"type\": \"group\", \"attendance_taken\": true, \"worked_minutes\": 60}\n          ],\n          \"insights\": {\n            \"top_players_by_presence\": [\n              {\"player_id\": 120, \"player_name\": \"Player One\", \"present_count\": 8}\n            ],\n            \"top_active_players_by_presence\": [\n              {\"player_id\": 120, \"player_name\": \"Player One\", \"present_count\": 8}\n            ]\n          }\n        }\n      ]\n    },\n    \"filters\": {\n      \"type\": \"coach_productivity\",\n      \"reference_id\": \"all\",\n      \"reference_type\": \"coach\",\n      \"start_date\": \"2026-01-01\",\n      \"end_date\": \"2026-01-31\",\n      \"evaluation_type\": \"group\"\n    },\n    \"request_hash\": \"fd4b4f4f5ca9f1f9f5b5a2f5b2eaf6d157f3f91c5a3ebebf3dbf6a0b03357f23\",\n    \"status\": \"completed\",\n    \"calculation_version\": 1,\n    \"generated_by\": 7,\n    \"queued_at\": null,\n    \"started_at\": null,\n    \"completed_at\": \"2026-02-25T17:21:14.000000Z\",\n    \"error_message\": null,\n    \"last_exported_at\": null,\n    \"created_at\": \"2026-02-25T17:21:14.000000Z\",\n    \"updated_at\": \"2026-02-25T17:21:14.000000Z\"\n  },\n  \"summary\": {\n    \"type\": \"coach_productivity\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"coach\",\n    \"date_range\": {\"start_date\": \"2026-01-01\", \"end_date\": \"2026-01-31\"},\n    \"status\": \"completed\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Report generated\",\n  \"report\": {\n    \"id\": 211,\n    \"report_type\": \"school_site_productivity\",\n    \"canonical_report_type\": \"school_site_productivity\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"location\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"location\",\n        \"date_range\": {\"start_date\": \"2026-02-01\", \"end_date\": \"2026-02-28\"},\n        \"calculation_version\": 1\n      },\n      \"summary\": {\n        \"school_sites_count\": 3,\n        \"sessions_total\": 140,\n        \"sessions_worked\": 112,\n        \"sessions_pending_attendance\": 18,\n        \"sessions_canceled\": 10,\n        \"worked_hours\": 196.5,\n        \"pending_hours\": 32.0,\n        \"total_players_present\": 674,\n        \"estimated_capacity_total\": 860,\n        \"occupancy_rate_percent\": 78.37,\n        \"total_revenue\": 21450.00,\n        \"productivity_index_percent\": 24.94\n      },\n      \"distributions\": {\n        \"sessions_by_status\": {\"completed\": 130, \"canceled\": 10},\n        \"sessions_by_type\": {\"group\": 62, \"semi-private\": 41, \"private\": 37},\n        \"attendances_by_status\": {\"present\": 674, \"absent\": 81, \"excused\": 25}\n      },\n      \"breakdown_by_location\": [\n        {\n          \"school_site_id\": 1,\n          \"school_site_name\": \"North Campus\",\n          \"sessions_total\": 58,\n          \"sessions_worked\": 47,\n          \"sessions_pending_attendance\": 7,\n          \"total_revenue\": 8200.00\n        }\n      ],\n      \"location_details\": [],\n      \"session_details\": []\n    }\n  }\n}",
                            "name": "Location v2 example (school_site_productivity)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Report generated\",\n  \"report\": {\n    \"id\": 212,\n    \"report_type\": \"player_performance\",\n    \"canonical_report_type\": \"player_performance\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"player\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"player\",\n        \"date_range\": {\"start_date\": \"2026-02-01\", \"end_date\": \"2026-02-28\"},\n        \"calculation_version\": 1\n      },\n      \"summary\": {\n        \"players_analyzed\": 45,\n        \"players_improving\": 31,\n        \"players_declining\": 8,\n        \"players_stable\": 6,\n        \"average_improvement_percent\": 7.42,\n        \"best_improvement_percent\": 28.12,\n        \"worst_improvement_percent\": -11.40\n      },\n      \"distributions\": {\n        \"improvement_ranges\": {\n          \"below_minus_10\": 1,\n          \"minus_10_to_0\": 7,\n          \"0_to_10\": 24,\n          \"above_10\": 13\n        }\n      },\n      \"breakdown_by_player\": [\n        {\n          \"player_id\": 55,\n          \"player_name\": \"Player Example\",\n          \"first_evaluation_score\": 63.4,\n          \"last_evaluation_score\": 71.8,\n          \"improvement_percentage\": 13.25,\n          \"evaluations_count\": 5,\n          \"trend\": \"improving\"\n        }\n      ],\n      \"player_details\": []\n    }\n  }\n}",
                            "name": "Performance v2 example (player_performance)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Report generated\",\n  \"report\": {\n    \"id\": 213,\n    \"report_type\": \"ecommerce_revenue_overview\",\n    \"canonical_report_type\": \"ecommerce_revenue_overview\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"location\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"location\",\n        \"date_range\": {\"start_date\": \"2026-02-01\", \"end_date\": \"2026-02-28\"},\n        \"calculation_version\": 1\n      },\n      \"summary\": {\n        \"orders_revenue\": 2400.00,\n        \"invoices_revenue\": 1960.00,\n        \"subscriptions_estimated_revenue\": 13250.00,\n        \"total_revenue\": 17610.00,\n        \"orders_count\": 38,\n        \"invoices_count\": 44,\n        \"subscriptions_count\": 110\n      },\n      \"distributions\": {\n        \"orders_by_status\": {\"paid\": 33, \"pending\": 5},\n        \"invoices_by_status\": {\"paid\": 36, \"overdue\": 8},\n        \"subscriptions_by_status\": {\"active\": 110},\n        \"revenue_by_source\": {\"orders\": 2400.00, \"invoices\": 1960.00, \"subscriptions_estimated\": 13250.00}\n      },\n      \"breakdown_by_source\": [\n        {\"source\": \"orders\", \"records_count\": 38, \"revenue\": 2400.00, \"share_percent\": 13.63}\n      ],\n      \"source_details\": []\n    }\n  }\n}",
                            "name": "Ecommerce v2 example (ecommerce_revenue_overview)"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Report generated\",\n  \"report\": {\n    \"id\": 214,\n    \"report_type\": \"executive_monthly_overview\",\n    \"canonical_report_type\": \"executive_monthly_overview\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"location\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"location\",\n        \"date_range\": {\"start_date\": \"2026-02-01\", \"end_date\": \"2026-02-28\"},\n        \"calculation_version\": 1\n      },\n      \"summary\": {\n        \"total_sessions\": 82,\n        \"present_attendances\": 305,\n        \"unique_training_players\": 96,\n        \"active_subscriptions\": 110,\n        \"total_revenue\": 17610.00\n      },\n      \"distributions\": {\n        \"sessions_by_status\": {\"completed\": 78, \"canceled\": 4},\n        \"sessions_by_type\": {\"private\": 19, \"semi-private\": 21, \"group\": 42},\n        \"active_subscriptions_by_location\": {\"1\": 80, \"2\": 30},\n        \"revenue_by_source\": {\"orders\": 2400.00, \"invoices\": 1960.00, \"subscriptions_estimated\": 13250.00}\n      },\n      \"breakdown_by_source\": [\n        {\"source\": \"orders\", \"revenue\": 2400.00, \"share_percent\": 13.63}\n      ],\n      \"breakdown_by_location\": [\n        {\"school_site_id\": 1, \"school_site_name\": \"North Campus\", \"sessions_total\": 52, \"active_subscriptions\": 80, \"estimated_subscription_revenue\": 9800.00}\n      ],\n      \"location_details\": []\n    }\n  }\n}",
                            "name": "Executive v2 example (executive_monthly_overview)"
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"type\": [\"The selected type is invalid.\"],\n    \"reference_id\": [\"The selected reference_id is not valid for this school and report type.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Generate report (async)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/generate\/async",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/generate\/async",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ipsam",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"type\":\"coach_productivity\",\"reference_id\":\"all\",\"start_date\":\"2026-01-01\",\"end_date\":\"2026-01-31\",\"evaluation_type\":\"group\",\"force_refresh\":false,\"requested_format\":\"pdf\"}"
                        },
                        "description": "Queues report generation and returns a run UUID for status tracking.\nUse `GET \/reports\/runs\/{runUuid}` to poll status until `completed` or `failed`."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 202,
                            "body": "{\n  \"message\": \"Report queued\",\n  \"run\": {\n    \"run_uuid\": \"22e5f40e-6611-4ad7-a438-10f5258998ec\",\n    \"status\": \"queued\",\n    \"report_type\": \"executive_monthly_overview\",\n    \"requested_format\": \"pdf\",\n    \"queued_at\": \"2026-02-25T17:25:48.000000Z\"\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Report types",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/get\/types",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/get\/types",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "autem",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the canonical report catalog used by backend and frontend.\nIncludes whether `reference_id=all` is supported and any accepted aliases."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"report_types\": [\n    {\n      \"type\": \"school_site_productivity\",\n      \"type_label\": \"School site productivity\",\n      \"description\": \"Location productivity across sessions, players and revenue.\",\n      \"module\": \"Location\",\n      \"reference_type\": \"location\",\n      \"allows_all\": true,\n      \"aliases\": [\"location_productivity\"]\n    },\n    {\n      \"type\": \"executive_monthly_overview\",\n      \"type_label\": \"Executive monthly overview\",\n      \"description\": \"Executive KPI snapshot for operations and ecommerce.\",\n      \"module\": \"Executive\",\n      \"reference_type\": \"location\",\n      \"allows_all\": true,\n      \"aliases\": []\n    }\n  ]\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Get report run status",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/runs\/:runUuid",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/runs\/:runUuid",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ullam",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "runUuid",
                                    "key": "runUuid",
                                    "value": "22e5f40e-6611-4ad7-a438-10f5258998ec",
                                    "description": "Run UUID."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns async execution status. Possible statuses: `queued`, `running`, `completed`, `failed`.\nIf completed, `report_id` can be used with `\/reports\/{id}` and `\/reports\/{id}\/export`."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"run\": {\n    \"run_uuid\": \"22e5f40e-6611-4ad7-a438-10f5258998ec\",\n    \"status\": \"completed\",\n    \"report_id\": 190,\n    \"report_type\": \"executive_monthly_overview\",\n    \"requested_format\": \"pdf\",\n    \"error_message\": null,\n    \"queued_at\": \"2026-02-25T17:25:48.000000Z\",\n    \"started_at\": \"2026-02-25T17:25:49.000000Z\",\n    \"finished_at\": \"2026-02-25T17:25:51.000000Z\"\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "List reports",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports",
                            "query": [
                                {
                                    "key": "type",
                                    "value": "coach_productivity",
                                    "description": "optional Filter by report type.",
                                    "disabled": false
                                },
                                {
                                    "key": "status",
                                    "value": "completed",
                                    "description": "optional Filter by status.",
                                    "disabled": false
                                },
                                {
                                    "key": "view",
                                    "value": "table",
                                    "description": "optional table|select.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "20",
                                    "description": "optional Page size.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports?type=coach_productivity&status=completed&view=table&per_page=20",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "omnis",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Paginated report registry for the school. `view=select` returns a lightweight list."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"reports\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 190,\n        \"report_type\": \"executive_monthly_overview\",\n        \"canonical_report_type\": \"executive_monthly_overview\",\n        \"reference_id\": \"all\",\n        \"reference_type\": \"location\",\n        \"status\": \"completed\",\n        \"date_range_start\": \"2026-01-01T00:00:00.000000Z\",\n        \"date_range_end\": \"2026-01-31T00:00:00.000000Z\",\n        \"generated_by\": 7,\n        \"created_at\": \"2026-02-25T17:26:12.000000Z\"\n      }\n    ],\n    \"per_page\": 20,\n    \"total\": 1\n  },\n  \"metadata\": {\n    \"columns\": [\n      \"id\",\n      \"report_type\",\n      \"canonical_report_type\",\n      \"reference_id\",\n      \"reference_type\",\n      \"status\",\n      \"date_range_start\",\n      \"date_range_end\",\n      \"generated_by\",\n      \"created_at\"\n    ],\n    \"defaultColumns\": [\"report_type\", \"reference_id\", \"reference_type\", \"status\", \"created_at\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Get report",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "et",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "Report id."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns full persisted report payload (`calculated_data` varies by `report_type`)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"report\": {\n    \"id\": 190,\n    \"report_type\": \"executive_monthly_overview\",\n    \"canonical_report_type\": \"executive_monthly_overview\",\n    \"reference_id\": \"all\",\n    \"reference_type\": \"location\",\n    \"school_id\": 1,\n    \"date_range_start\": \"2026-01-01T00:00:00.000000Z\",\n    \"date_range_end\": \"2026-01-31T00:00:00.000000Z\",\n    \"calculated_data\": {\n      \"scope\": {\n        \"school_id\": 1,\n        \"reference_id\": \"all\",\n        \"reference_type\": \"location\",\n        \"date_range\": {\"start_date\": \"2026-01-01\", \"end_date\": \"2026-01-31\"},\n        \"calculation_version\": 1\n      },\n      \"summary\": {\n        \"total_sessions\": 82,\n        \"present_attendances\": 305,\n        \"unique_training_players\": 96,\n        \"active_subscriptions\": 110,\n        \"estimated_subscription_revenue\": 13250.00,\n        \"orders_revenue\": 2400.00,\n        \"invoices_revenue\": 1960.00,\n        \"total_revenue\": 17610.00,\n        \"average_revenue_per_session\": 214.76\n      },\n      \"distributions\": {\n        \"sessions_by_status\": {\"completed\": 78, \"canceled\": 4},\n        \"sessions_by_type\": {\"private\": 19, \"semi-private\": 21, \"group\": 42},\n        \"active_subscriptions_by_location\": {\"1\": 80, \"2\": 30},\n        \"revenue_by_source\": {\"orders\": 2400.00, \"invoices\": 1960.00, \"subscriptions_estimated\": 13250.00}\n      },\n      \"breakdown_by_source\": [\n        {\"source\": \"orders\", \"revenue\": 2400.00, \"share_percent\": 13.63}\n      ],\n      \"breakdown_by_location\": [\n        {\"school_site_id\": 1, \"school_site_name\": \"North Campus\", \"sessions_total\": 52, \"active_subscriptions\": 80, \"estimated_subscription_revenue\": 9800.00}\n      ],\n      \"location_details\": []\n    },\n    \"status\": \"completed\",\n    \"calculation_version\": 1,\n    \"generated_by\": 7,\n    \"created_at\": \"2026-02-25T17:26:12.000000Z\",\n    \"updated_at\": \"2026-02-25T17:26:12.000000Z\"\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Export report",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/:id\/export",
                            "query": [
                                {
                                    "key": "format",
                                    "value": "csv",
                                    "description": "optional json|csv|xlsx|pdf.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/:id\/export?format=csv",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aut",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "Report id."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Supported formats: json, csv, xlsx, pdf.\nBinary formats are streamed as downloadable attachments."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 190,\n  \"report_type\": \"executive_monthly_overview\",\n  \"canonical_report_type\": \"executive_monthly_overview\",\n  \"reference_id\": \"all\",\n  \"reference_type\": \"location\",\n  \"status\": \"completed\",\n  \"calculated_data\": {\n    \"scope\": {\"school_id\": 1, \"reference_id\": \"all\", \"reference_type\": \"location\"},\n    \"summary\": {\"total_sessions\": 82, \"total_revenue\": 17610.00},\n    \"distributions\": {\"sessions_by_status\": {\"completed\": 78, \"canceled\": 4}},\n    \"breakdown_by_source\": [{\"source\": \"orders\", \"revenue\": 2400.00, \"share_percent\": 13.63}],\n    \"breakdown_by_location\": [{\"school_site_id\": 1, \"school_site_name\": \"North Campus\", \"sessions_total\": 52}]\n  }\n}",
                            "name": "JSON format"
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "\"Binary file download stream\"",
                            "name": "CSV\/XLSX\/PDF formats"
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"Invalid export format\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Player sessions by report",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/reports\/:id\/players\/:playerId\/sessions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/reports\/:id\/players\/:playerId\/sessions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "deserunt",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "Report id."
                                },
                                {
                                    "id": "playerId",
                                    "key": "playerId",
                                    "value": "15",
                                    "description": "Player id."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "%22my-academy%22",
                                    "description": "School slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Resolves attended sessions for a player inside the report date range and groups them by session type."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"player_id\": 15,\n  \"report_id\": 190,\n  \"date_range\": {\n    \"start\": \"2026-01-01\",\n    \"end\": \"2026-01-31\"\n  },\n  \"sessions\": {\n    \"group\": [\n      {\n        \"id\": 901,\n        \"name\": \"Group Session 901\",\n        \"date\": \"2026-01-12\",\n        \"starting_time\": \"15:00\",\n        \"ending_time\": \"16:00\",\n        \"coach\": {\"id\": 11, \"name\": \"Coach One\"},\n        \"group\": {\"id\": 19, \"name\": \"Group A\"},\n        \"location\": {\"id\": 3, \"name\": \"Court A\"},\n        \"attendance_status\": \"present\",\n        \"excuse_comment\": null\n      }\n    ]\n  }\n}",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Setting",
            "description": "",
            "item": [
                {
                    "name": "Profile - Get my profile",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/profile",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/profile"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the authenticated user's profile with an appended image_url and any saved custom_fields.\nNo specific permission is required beyond being authenticated."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"profile\": {\n    \"id\": 1,\n    \"user_id\": 1,\n    \"first_name\": \"John\",\n    \"last_name\": \"Doe\",\n    \"gender\": \"male\",\n    \"date_birth\": \"1990-01-01\",\n    \"id_number\": \"123456789\",\n    \"language\": \"en\",\n    \"billing_phone_number\": \"+1234567890\",\n    \"billing_country\": \"United States\",\n    \"billing_email\": \"john.doe@example.com\",\n    \"billing_state\": \"California\",\n    \"billing_address\": \"123 Main Street\",\n    \"billing_zip_code\": \"90210\",\n    \"image_url\": \"https:\/\/s3.amazonaws.com\/bucket-name\/profile-images\/image.jpg\",\n    \"created_at\": \"2025-01-16T00:00:00.000000Z\",\n    \"updated_at\": \"2025-01-16T00:00:00.000000Z\"\n  },\n  \"custom_fields\": [\n    { \"slug\": \"hobby\", \"value\": \"soccer\" },\n    { \"slug\": \"favorite_food\", \"value\": \"pizza\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 401,
                            "body": "{ \"message\": \"Unauthenticated.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Profile not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Profile - Store or Update profile",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/profile",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/profile"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "first_name",
                                    "value": "John",
                                    "type": "text",
                                    "description": "optional The user's first name."
                                },
                                {
                                    "key": "last_name",
                                    "value": "Doe",
                                    "type": "text",
                                    "description": "optional The user's last name."
                                },
                                {
                                    "key": "gender",
                                    "value": "male",
                                    "type": "text",
                                    "description": "optional The user's gender. One of: male, female, other."
                                },
                                {
                                    "key": "date_birth",
                                    "value": "1990-01-01",
                                    "type": "text",
                                    "description": "optional The user's date of birth (YYYY-MM-DD)."
                                },
                                {
                                    "key": "id_number",
                                    "value": "123456789",
                                    "type": "text",
                                    "description": "optional A unique identification number for the user."
                                },
                                {
                                    "key": "language",
                                    "value": "en",
                                    "type": "text",
                                    "description": "optional The user's preferred language (max 10 chars)."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "1",
                                    "type": "text",
                                    "description": "optional Required when billing_phone_number is present; up to 4 digits."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "+1234567890",
                                    "type": "text",
                                    "description": "optional Phone used for billing. When phone_code is provided, it will be normalized to E.164."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "+1234000999",
                                    "type": "text",
                                    "description": "optional A secondary phone number."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "john.doe@example.com",
                                    "type": "text",
                                    "description": "optional Billing email address."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "john.alt@example.com",
                                    "type": "text",
                                    "description": "optional Secondary email address."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "United States",
                                    "type": "text",
                                    "description": "optional Billing country."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "California",
                                    "type": "text",
                                    "description": "optional Billing state or province."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "Los Angeles",
                                    "type": "text",
                                    "description": "optional Billing city."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "123 Main Street",
                                    "type": "text",
                                    "description": "optional Billing address."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "90210",
                                    "type": "text",
                                    "description": "optional Billing ZIP or postal code."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "1",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "medical_details",
                                    "value": "dardnrp",
                                    "type": "text",
                                    "description": "This field is required when <code>has_medical_conditions<\/code> is <code>1<\/code>. Must not be greater than 1000 characters."
                                },
                                {
                                    "key": "schedules[0][day_of_week]",
                                    "value": "wednesday",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][start_time]",
                                    "value": "04:17",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "schedules[0][end_time]",
                                    "value": "2092-06-26",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Creates or updates the authenticated user's profile. Required permission: administrative.setting.profile.store."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Profile updated successfully\",\n  \"profile\": {\n    \"id\": 1,\n    \"user_id\": 1,\n    \"first_name\": \"John\",\n    \"last_name\": \"Doe\",\n    \"gender\": \"male\",\n    \"date_birth\": \"1990-01-01\",\n    \"id_number\": \"123456789\",\n    \"language\": \"en\",\n    \"billing_phone_number\": \"+1234567890\",\n    \"billing_country\": \"United States\",\n    \"billing_email\": \"john.doe@example.com\",\n    \"billing_state\": \"California\",\n    \"billing_address\": \"123 Main Street\",\n    \"billing_zip_code\": \"90210\",\n    \"image_url\": \"https:\/\/s3.amazonaws.com\/bucket-name\/profile-images\/image.jpg\",\n    \"created_at\": \"2025-01-16T00:00:00.000000Z\",\n    \"updated_at\": \"2025-01-16T00:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Profile created successfully\",\n  \"profile\": {\n    \"id\": 1,\n    \"user_id\": 1,\n    \"first_name\": \"John\",\n    \"last_name\": \"Doe\",\n    \"gender\": \"male\",\n    \"date_birth\": \"1990-01-01\",\n    \"id_number\": \"123456789\",\n    \"language\": \"en\",\n    \"billing_phone_number\": \"+1234567890\",\n    \"billing_country\": \"United States\",\n    \"billing_email\": \"john.doe@example.com\",\n    \"billing_state\": \"California\",\n    \"billing_address\": \"123 Main Street\",\n    \"billing_zip_code\": \"90210\",\n    \"image_url\": \"https:\/\/s3.amazonaws.com\/bucket-name\/profile-images\/image.jpg\",\n    \"created_at\": \"2025-01-16T00:00:00.000000Z\",\n    \"updated_at\": \"2025-01-16T00:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"phone_code\": [\"The phone code field is required when billing phone number is present.\"],\n    \"gender\": [\"The selected gender is invalid.\"],\n    \"billing_email\": [\"The billing email must be a valid email address.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Profile - Change password",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/change-password",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/change-password"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"current_password\":\"currentPassword123\",\"new_password\":\"NewPassword123\",\"new_password_confirmation\":\"NewPassword123\"}"
                        },
                        "description": "Change the authenticated user's password. Required permission: administrative.setting.profile.changePassword."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Password changed successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{ \"message\": \"Current password does not match.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"new_password\": [\"The new password must be at least 8 characters.\"],\n    \"new_password_confirmation\": [\"The new password confirmation does not match.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "School - List schools (admin)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/schools",
                            "query": [
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Number of records per page. Default: 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional If true, returns only archived schools. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "vel",
                                    "description": "optional Dynamic filters. Each filter must include column, operator and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "Filter operator. One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed Value to compare. Use an array for the \"between\" operator.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "optional Column to sort results by.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/setting\/schools?per_page=15&only_archived=1&filters[0]=vel&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive&sort_by=nickname&direction=desc"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Lists schools that belong to the authenticated administrative user.\nRequired permission: administrative.setting.school.index."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"schools\": {\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Wildcats\",\n        \"address\": \"123 Main St\",\n        \"status\": \"active\",\n        \"created_at\": \"2023-01-15T00:00:00.000000Z\",\n        \"updated_at\": \"2023-06-10T00:00:00.000000Z\",\n        \"administrative\": { \"id\": 1, \"name\": \"John Doe\" },\n        \"creator\": { \"id\": 2, \"name\": \"Jane Smith\" },\n        \"school_sites\": [\n          {\n            \"id\": 1,\n            \"name\": \"Main Campus\",\n            \"locations\": [\n              { \"id\": 1, \"name\": \"Field A\", \"description\": \"Main soccer field\" }\n            ]\n          }\n        ]\n      }\n    ],\n    \"links\": {\n      \"first\": \"http:\/\/example.com\/api\/setting\/schools?page=1\",\n      \"last\": \"http:\/\/example.com\/api\/setting\/schools?page=10\",\n      \"prev\": null,\n      \"next\": \"http:\/\/example.com\/api\/setting\/schools?page=2\"\n    },\n    \"meta\": {\n      \"current_page\": 1,\n      \"from\": 1,\n      \"last_page\": 10,\n      \"path\": \"http:\/\/example.com\/api\/setting\/schools\",\n      \"per_page\": 10,\n      \"to\": 10,\n      \"total\": 100\n    }\n  },\n  \"metadata\": {\n    \"columns\": [\n      \"id\",\n      \"nickname\",\n      \"address\",\n      \"status\",\n      \"created_at\",\n      \"updated_at\",\n      \"administrative.name\",\n      \"creator.name\"\n    ],\n    \"defaultColumns\": [\"id\", \"nickname\", \"address\", \"description\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "School - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/schools",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/schools"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "nickname",
                                    "value": "Wildcats",
                                    "type": "text",
                                    "description": "The school's nickname."
                                },
                                {
                                    "key": "address",
                                    "value": "123 Main St",
                                    "type": "text",
                                    "description": "The school's address."
                                },
                                {
                                    "key": "sport",
                                    "value": "Soccer",
                                    "type": "text",
                                    "description": "optional The school's main sport."
                                },
                                {
                                    "key": "description",
                                    "value": "A leading sports school.",
                                    "type": "text",
                                    "description": "optional The school's description."
                                },
                                {
                                    "key": "status",
                                    "value": "active",
                                    "type": "text",
                                    "description": "optional The school's status. One of: active, inactive. Default: active."
                                },
                                {
                                    "key": "name_representative",
                                    "value": "John",
                                    "type": "text",
                                    "description": "The representative's first name."
                                },
                                {
                                    "key": "last_name_representative",
                                    "value": "Doe",
                                    "type": "text",
                                    "description": "The representative's last name."
                                },
                                {
                                    "key": "id_number_representative",
                                    "value": "123456789",
                                    "type": "text",
                                    "description": "The representative's ID number."
                                },
                                {
                                    "key": "phone_number_representative",
                                    "value": "+1234567890",
                                    "type": "text",
                                    "description": "The representative's phone number."
                                },
                                {
                                    "key": "email_representative",
                                    "value": "john.doe@example.com",
                                    "type": "text",
                                    "description": "The representative's email."
                                },
                                {
                                    "key": "school_sites[0][locations][0][name]",
                                    "value": "gcatimxvdzbktmuqqgmc",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "school_sites[0][locations][0][description]",
                                    "value": "Fugiat sed sed delectus corrupti quae.",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "photo",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Creates a school owned by the authenticated administrative user, optionally with school sites and locations.\nThe school's photo can be uploaded and is stored via a polymorphic media relation.\nRequired permission: administrative.setting.school.store."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"School created successfully\",\n  \"school\": {\n    \"id\": 1,\n    \"nickname\": \"Wildcats\",\n    \"address\": \"123 Main St\",\n    \"photo_url\": \"https:\/\/s3.amazonaws.com\/bucket\/schools\/images\/abc123.jpg\",\n    \"school_sites\": [\n      {\n        \"id\": 1,\n        \"name\": \"Main Campus\",\n        \"phone\": \"123456\",\n        \"address\": \"123 Main St\",\n        \"email\": \"campus@example.com\",\n        \"locations\": [\n          { \"id\": 1, \"name\": \"Field A\", \"description\": \"Main soccer field\" }\n        ]\n      }\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"email_representative\": [\"The email representative must be a valid email address.\"],\n    \"school_sites.0.name\": [\"The name field is required.\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"message\": \"An error occurred: <details>\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "School - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/schools\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/schools\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieves a school by ID, including its school sites, locations, and appended photo_url.\nRequired permission: administrative.setting.school.show or customer.setting.school.show."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"School retrieved successfully\",\n  \"school\": {\n    \"id\": 1,\n    \"nickname\": \"Wildcats\",\n    \"address\": \"123 Main St\",\n    \"sport\": \"Soccer\",\n    \"status\": \"active\",\n    \"name_representative\": \"John\",\n    \"last_name_representative\": \"Doe\",\n    \"id_number_representative\": \"123456789\",\n    \"phone_number_representative\": \"+1234567890\",\n    \"email_representative\": \"john.doe@example.com\",\n    \"photo_url\": \"https:\/\/s3.amazonaws.com\/bucket-name\/schools\/photos\/photo.jpg\",\n    \"school_sites\": [\n      {\n        \"id\": 1,\n        \"name\": \"Main Campus\",\n        \"phone\": \"123456\",\n        \"address\": \"123 Main St\",\n        \"email\": \"campus@example.com\",\n        \"locations\": [\n          { \"id\": 1, \"name\": \"Field A\", \"description\": \"Main soccer field\", \"state\": \"active\" }\n        ]\n      }\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "School - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/schools\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/schools\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the school to update."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "nickname",
                                    "value": "Wildcats",
                                    "type": "text",
                                    "description": "optional The school's nickname."
                                },
                                {
                                    "key": "address",
                                    "value": "123 Main St",
                                    "type": "text",
                                    "description": "optional The school's address."
                                },
                                {
                                    "key": "sport",
                                    "value": "Soccer",
                                    "type": "text",
                                    "description": "optional The school's main sport."
                                },
                                {
                                    "key": "description",
                                    "value": "A leading sports school.",
                                    "type": "text",
                                    "description": "optional The school's description."
                                },
                                {
                                    "key": "status",
                                    "value": "active",
                                    "type": "text",
                                    "description": "optional The school's status. One of: active, inactive. Default: active."
                                },
                                {
                                    "key": "name_representative",
                                    "value": "John",
                                    "type": "text",
                                    "description": "optional The representative's first name."
                                },
                                {
                                    "key": "last_name_representative",
                                    "value": "Doe",
                                    "type": "text",
                                    "description": "optional The representative's last name."
                                },
                                {
                                    "key": "id_number_representative",
                                    "value": "123456789",
                                    "type": "text",
                                    "description": "optional The representative's ID number."
                                },
                                {
                                    "key": "phone_number_representative",
                                    "value": "+1234567890",
                                    "type": "text",
                                    "description": "optional The representative's phone number."
                                },
                                {
                                    "key": "email_representative",
                                    "value": "john.doe@example.com",
                                    "type": "text",
                                    "description": "optional The representative's email."
                                },
                                {
                                    "key": "school_sites[0][locations][0][name]",
                                    "value": "fhqhppgffkngazdjlifv",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "school_sites[0][locations][0][description]",
                                    "value": "Voluptatem quo quasi alias accusantium.",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "photo",
                                    "src": [],
                                    "type": "file"
                                },
                                {
                                    "key": "_method",
                                    "value": "PUT",
                                    "type": "text"
                                }
                            ]
                        },
                        "description": "Updates an existing school (must belong to the authenticated administrative user), including its school sites, locations, and photo.\nRequired permission: administrative.setting.school.update."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"School updated successfully\",\n  \"school\": {\n    \"id\": 1,\n    \"nickname\": \"Wildcats\",\n    \"address\": \"123 Main St\",\n    \"sport\": \"Soccer\",\n    \"status\": \"active\",\n    \"name_representative\": \"John\",\n    \"last_name_representative\": \"Doe\",\n    \"id_number_representative\": \"123456789\",\n    \"phone_number_representative\": \"+1234567890\",\n    \"email_representative\": \"john.doe@example.com\",\n    \"photo_url\": \"https:\/\/s3.amazonaws.com\/bucket-name\/schools\/photos\/photo.jpg\",\n    \"school_sites\": [\n      {\n        \"id\": 1,\n        \"name\": \"Main Campus\",\n        \"phone\": \"123456\",\n        \"address\": \"123 Main St\",\n        \"email\": \"campus@example.com\",\n        \"locations\": [\n          { \"id\": 1, \"name\": \"Field A\", \"description\": \"Main soccer field\", \"state\": \"active\" }\n        ]\n      }\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field must be a string.\"],\n    \"school_sites.0.name\": [\"The name field is required when updating a school site.\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"message\": \"An error occurred: <details>\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "School - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/setting\/schools\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/setting\/schools\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the school to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive (soft) a school by setting its `status` to `archived`. The school remains in the database.\nRequired permission: administrative.setting.school.delete."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"School archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"message\": \"An error occurred: <details>\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Division Categories - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/division-categories",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only categories with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "ab",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/division-categories?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=ab&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope categories."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns division categories scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.setting.level.divisionCategory.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"categories\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Primary Division\",\n        \"description\": \"This is the primary division category.\",\n        \"status\": \"active\",\n        \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n        \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n        \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"status\", \"school.nickname\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"categories\": [\n    { \"id\": 1, \"nickname\": \"Primary Division\" },\n    { \"id\": 2, \"nickname\": \"Secondary Division\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Division Categories - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/division-categories",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/division-categories",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school where the category will be created."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Primary Division\",\"description\":\"This is the primary division category.\",\"status\":\"active\"}"
                        },
                        "description": "Creates a new division category scoped to the provided school. Required permission:\nadministrative.setting.level.divisionCategory.store. The authenticated user must be authorized for the school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Division category created successfully\",\n  \"category\": {\n    \"id\": 1,\n    \"nickname\": \"Primary Division\",\n    \"description\": \"This is the primary division category.\",\n    \"status\": \"active\",\n    \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n    \"creator_id\": 5,\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"description\": [\"The description field is required.\"],\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Division Categories - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the request."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the division category to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single division category (with its school) scoped to the provided school. Required permission:\nadministrative.setting.level.divisionCategory.show."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1,\n  \"nickname\": \"Primary Division\",\n  \"description\": \"This is the primary division category.\",\n  \"status\": \"active\",\n  \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n  \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n  \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Division category not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Division Categories - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the request."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the division category to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Primary Division\",\"description\":\"Updated description\",\"status\":\"inactive\"}"
                        },
                        "description": "Partially update a division category scoped to the provided school. Required permission (as implemented):\nadministrative.setting.level.divisionCategory.show."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Division category updated successfully\",\n  \"category\": {\n    \"id\": 1,\n    \"nickname\": \"Primary Division\",\n    \"description\": \"Updated description\",\n    \"status\": \"inactive\",\n    \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n    \"creator_id\": 5,\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:30:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Division category not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": { \"status\": [\"The selected status is invalid.\"] }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Division Categories - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/division-categories\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "dolorum",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the division category to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "This endpoint allows the authenticated administrator to archive a division category by\nchanging its status to \"archived\". This action does not delete the category from the database."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n   \"message\": \"Division category archived successfully.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\n   \"message\": \"Division category not found or unauthorized.\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Learning Stages - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/learning-stages",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only stages with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "vel",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/learning-stages?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=vel&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope stages."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns learning stages scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname list). Required permission: administrative.setting.level.learningStage.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"stages\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Kindergarten\",\n        \"description\": \"Learning stage for children aged 3-5.\",\n        \"status\": \"active\",\n        \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n        \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n        \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"description\", \"status\", \"school.nickname\"],\n    \"defaultColumns\": [\"id\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"stages\": [\n    { \"id\": 1, \"nickname\": \"Kindergarten\" },\n    { \"id\": 2, \"nickname\": \"Primary\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Learning Stages - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/learning-stages",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/learning-stages",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school where the stage will be created."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Kindergarten\",\"description\":\"Stage for children aged 3-5.\",\"status\":\"active\"}"
                        },
                        "description": "Creates a new learning stage scoped to the provided school. Required permission:\nadministrative.setting.level.learningStage.store. The authenticated user must be authorized for the school."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Learning stage created successfully\",\n  \"learning_stage\": {\n    \"id\": 1,\n    \"nickname\": \"Kindergarten\",\n    \"description\": \"Stage for children aged 3-5.\",\n    \"status\": \"active\",\n    \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n    \"creator_id\": 5,\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"description\": [\"The description field is required.\"],\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Learning Stages - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the request."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the learning stage to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single learning stage (with its school) scoped to the provided school. Required permission:\nadministrative.setting.level.learningStage.show."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1,\n  \"nickname\": \"Kindergarten\",\n  \"description\": \"Stage for children aged 3-5.\",\n  \"status\": \"active\",\n  \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n  \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n  \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Learning stage not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Learning Stages - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the request."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the learning stage to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Kindergarten\",\"description\":\"Updated description\",\"status\":\"inactive\"}"
                        },
                        "description": "Partially update a learning stage scoped to the provided school. Required permission:\nadministrative.setting.level.learningStage.update."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Learning stage updated successfully\",\n  \"learning_stage\": {\n    \"id\": 1,\n    \"nickname\": \"Updated Kindergarten\",\n    \"description\": \"Updated description for the learning stage.\",\n    \"status\": \"inactive\",\n    \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n    \"creator_id\": 5,\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:30:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Learning stage not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": { \"status\": [\"The selected status is invalid.\"] }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Learning Stages - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/learning-stages\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the request."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the learning stage to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archives a learning stage by setting status to \"archived\". This does not delete the record. Required permission:\nadministrative.setting.level.learningStage.destroy."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Learning stage archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Learning stage not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Levels - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/levels",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "Determines the response format. One of: table, select. Defaults to table.",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "When view=table, number of records per page. Min: 1. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only levels with status=archived. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "nickname",
                                    "description": "Column to sort by. Must be a valid column.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "Sort direction. One of: asc, desc. Default: asc.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "eum",
                                    "description": "Dynamic filters. Each filter must include column, operator, and value.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "One of: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for the between operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/levels?view=select&per_page=15&only_archived=1&sort_by=nickname&direction=desc&filters[0]=eum&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope levels."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns levels scoped to the given school. Supports a table view (paginated with metadata)\nor a select view (lightweight id\/nickname\/name list). Required permission: administrative.setting.level.level.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"levels\": {\n    \"current_page\": 1,\n    \"data\": [\n      {\n        \"id\": 1,\n        \"nickname\": \"Level A\",\n        \"name\": \"First Level\",\n        \"description\": \"The first level of the learning stage.\",\n        \"status\": \"active\",\n        \"learning_stage\": { \"id\": 1, \"nickname\": \"Kindergarten\" },\n        \"division_category\": { \"id\": 1, \"nickname\": \"Primary Division\" },\n        \"school\": { \"id\": 1, \"nickname\": \"Wildcats\" },\n        \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n        \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n      }\n    ],\n    \"per_page\": 10,\n    \"total\": 50\n  },\n  \"metadata\": {\n    \"columns\": [\"id\", \"nickname\", \"name\", \"description\", \"status\", \"school.nickname\"],\n    \"defaultColumns\": [\"name\", \"nickname\", \"description\", \"status\"]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"levels\": [\n    { \"id\": 1, \"nickname\": \"Level A\", \"name\": \"First Level\" },\n    { \"id\": 2, \"nickname\": \"Level B\", \"name\": \"Second Level\" }\n  ]\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Levels - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/levels",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/levels",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to associate the level with."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Beginner\",\"name\":\"Level 1\",\"description\":\"Entry-level stage for new students.\",\"learning_stage_id\":1,\"division_category_id\":1,\"status\":\"active\"}"
                        },
                        "description": "Creates a new level in the given school. Required permission: administrative.setting.level.level.store.\nOnly the school's creator can perform this action."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\n  \"message\": \"Level created successfully.\",\n  \"level\": {\n    \"id\": 10,\n    \"nickname\": \"Beginner\",\n    \"name\": \"Level 1\",\n    \"description\": \"Entry-level stage for new students.\",\n    \"status\": \"active\",\n    \"learning_stage\": { \"id\": 1, \"nickname\": \"Kindergarten\" },\n    \"division_category\": { \"id\": 2, \"nickname\": \"Primary Division\" },\n    \"school\": { \"id\": 3, \"nickname\": \"Wildcats\" },\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"learning_stage_id\": [\"The selected learning stage id is invalid.\"],\n    \"division_category_id\": [\"The selected division category id is invalid.\"],\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Levels - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the level."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the level to retrieve."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the details of a specific level in the given school. Required permission: administrative.setting.level.level.show.\nOnly the school's creator can perform this action."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1,\n  \"nickname\": \"Beginner\",\n  \"name\": \"Level 1\",\n  \"description\": \"Entry-level stage for new students.\",\n  \"status\": \"active\",\n  \"learning_stage\": { \"id\": 1, \"nickname\": \"Kindergarten\" },\n  \"division_category\": { \"id\": 2, \"nickname\": \"Primary Division\" },\n  \"school\": { \"id\": 3, \"nickname\": \"Wildcats\" },\n  \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n  \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Level not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Levels - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school that owns the level."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the level to update."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"nickname\":\"Advanced\",\"name\":\"Level 2\",\"description\":\"Intermediate-level stage for students.\",\"learning_stage_id\":1,\"division_category_id\":1,\"status\":\"active\"}"
                        },
                        "description": "Updates an existing level in the given school. Required permission: administrative.setting.level.level.update.\nOnly the school's creator can perform this action."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"Level updated successfully.\",\n  \"level\": {\n    \"id\": 1,\n    \"nickname\": \"Advanced\",\n    \"name\": \"Level 2\",\n    \"description\": \"Intermediate-level stage for students.\",\n    \"status\": \"active\",\n    \"learning_stage\": { \"id\": 1, \"nickname\": \"Kindergarten\" },\n    \"division_category\": { \"id\": 2, \"nickname\": \"Primary Division\" },\n    \"school\": { \"id\": 3, \"nickname\": \"Wildcats\" },\n    \"created_at\": \"2025-01-17T12:00:00.000000Z\",\n    \"updated_at\": \"2025-01-17T12:00:00.000000Z\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Level not found or unauthorized.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\n  \"message\": \"The given data was invalid.\",\n  \"errors\": {\n    \"nickname\": [\"The nickname field is required.\"],\n    \"learning_stage_id\": [\"The selected learning stage id is invalid.\"],\n    \"division_category_id\": [\"The selected division category id is invalid.\"],\n    \"status\": [\"The selected status is invalid.\"]\n  }\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Level - Levels - Archive",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/levels\/levels\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school that owns the level."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "1",
                                    "description": "The ID of the level to archive."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archives a level by setting its status to \"archived\". Required permission: administrative.setting.level.level.delete.\nOnly the school's creator can perform this action. This doesn't permanently delete the record."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Level archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Level not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "User Statuses - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses",
                            "query": [
                                {
                                    "key": "sort_by",
                                    "value": "name",
                                    "description": "Column to sort by.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "asc",
                                    "description": "Sort direction (asc|desc).",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "10",
                                    "description": "Records per page. Default 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "When \"select\", returns minimal fields (id, name, role). Default: table.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "If true, returns only archived statuses. Default: false.",
                                    "disabled": false
                                },
                                {
                                    "key": "search",
                                    "value": "active",
                                    "description": "optional Global search across all base columns.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "corporis",
                                    "description": "optional Dynamic filters. Each filter must include `column`, `operator`, and `value`.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The name of the column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "The filter operator. Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive%0ANote%3A+Relation+dot-notation+is+supported+for+columns+%28e.g.%2C+profile.first_name%29%3B+nested+paths+are+allowed.",
                                    "description": "mixed The value to compare. Use an array for \"between\" operator.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses?sort_by=name&direction=asc&per_page=10&view=select&only_archived=1&search=active&filters[0]=corporis&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive%0ANote%3A+Relation+dot-notation+is+supported+for+columns+%28e.g.%2C+profile.first_name%29%3B+nested+paths+are+allowed.",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "doloribus",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "List user statuses for a school. Requires admin permission: administrative.setting.user-status.index"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"statuses\":{\"data\":[{\"id\":1,\"name\":\"Active Player\",\"role\":\"player\",\"description\":\"Has an active paid service.\",\"created_at\":\"2025-10-15T12:00:00Z\"}],\"current_page\":1,\"last_page\":1,\"per_page\":10,\"total\":1},\"metadata\":{\"columns\":[\"id\",\"name\",\"role\",\"description\",\"created_at\"],\"defaultColumns\":[\"id\",\"name\",\"role\"]}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"statuses\":[{\"id\":1,\"name\":\"Active Player\",\"role\":\"player\"}]}",
                            "name": "Select view"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "User Statuses - Create",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aperiam",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Active Player\",\"role\":\"player\",\"description\":\"Has an active paid service.\"}"
                        },
                        "description": "Create a status for the school. Requires admin permission: administrative.setting.user-status.store"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"message\":\"Status created\",\"status\":{\"id\":12,\"school_id\":1,\"name\":\"Active Player\",\"role\":\"player\",\"description\":\"Has an active paid service.\",\"created_at\":\"2025-10-15T12:00:00Z\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "User Statuses - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "quas",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The status ID."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Get a status by id. Requires admin permission: administrative.setting.user-status.show"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"status\":{\"id\":5,\"school_id\":1,\"name\":\"Active Player\",\"role\":\"player\",\"description\":\"Has an active paid service.\",\"created_at\":\"2025-10-15T12:00:00Z\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "User Statuses - Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "ut",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The status ID."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Paused Player\",\"role\":\"player\",\"description\":\"Service is paused or canceled.\"}"
                        },
                        "description": "Update a status. Requires admin permission: administrative.setting.user-status.update"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Status updated\",\"status\":{\"id\":5,\"school_id\":1,\"name\":\"Paused Player\",\"role\":\"player\",\"description\":\"Service is paused or canceled.\",\"updated_at\":\"2025-10-15T12:00:00Z\"}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Not found\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "User Statuses - Archive (soft delete)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "quod",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "5",
                                    "description": "The status ID."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Archive a status if it is not currently assigned to any user. Requires admin permission: administrative.setting.user-status.delete"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Status archived successfully.\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Not found\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"Cannot archive: status is assigned to one or more users.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Assign a status to a user",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/user-statuses\/assign-to-user",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/user-statuses\/assign-to-user",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "eius",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "my-school",
                                    "description": "The school's slug."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"user_id\":42,\"user_status_id\":12,\"note\":\"qldtpjrtlmhzygdfqvuar\"}"
                        },
                        "description": "Assign a school status to a user. Requires admin permission: administrative.setting.user-status.assign"
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Status assigned to user\",\"user\":{\"id\":42,\"name\":\"Jane Doe\",\"email\":\"jane@example.com\",\"user_status_id\":12}}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Unauthorized\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Status not found in this school\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"User does not belong to the specified school\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\":\"User role is not compatible with this status\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Configuration - Settings - Show configuration by slug",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/configuration\/:slug",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/configuration\/:slug",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the settings."
                                },
                                {
                                    "id": "slug",
                                    "key": "slug",
                                    "value": "users",
                                    "description": "One of: all, main, or a module slug (e.g., users)."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns configuration data for the given school and slug. Required permission: administrative.setting.configuration.show.\nSlugs: \"all\" returns the entire settings JSON, \"main\" returns colors and main blocks, any other value returns a specific module.\nOnly the school's creator can perform this action."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"settings\": {\n    \"modules\": [\n      { \"slug\": \"users\", \"plural_name\": \"Users\", \"sections\": [] }\n    ],\n    \"version\": \"1.0.0\"\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"colors\": { \"menus\": \"#242745\", \"header\": \"#FFFFFF\", \"background\": \"#f8f7fa\", \"typography\": \"#1F1F1F\" },\n  \"main\": { \"site_name\": \"AleAcademy\", \"logo\": \"https:\/\/example.com\/logo.png\" }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"template\": {\n    \"slug\": \"users\",\n    \"plural_name\": \"Users\",\n    \"singular_name\": \"User\",\n    \"sections\": [\n      {\n        \"default_name\": \"general\",\n        \"forms\": [\n          {\n            \"default_name\": \"profile_form\",\n            \"fields\": [ { \"label_en\": \"First Name\", \"label_es\": \"Nombre\" } ]\n          }\n        ]\n      }\n    ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Setting not found for the authenticated user.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Modules not found in the settings JSON.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Template not found for the provided slug.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Configuration - Settings - Update colors",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/configuration\/colors",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/configuration\/colors",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the settings."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"reset\":true,\"changes\":[{\"name\":\"menus\",\"color\":\"#FF5733\"},{\"name\":\"header\",\"color\":\"#000000\"}]}"
                        },
                        "description": "Updates the colors configuration for the given school or resets them to defaults. Required permission: administrative.setting.configuration.update.\nOnly the school's creator can perform this action."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"response\": {\n    \"menus\": \"#FF5733\",\n    \"header\": \"#000000\",\n    \"background\": \"#f8f7fa\",\n    \"typography\": \"#1F1F1F\"\n  },\n  \"status\": \"success\",\n  \"message\": \"Colors updated successfully.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"status\": \"error\", \"message\": \"Settings not found for the authenticated user.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"status\": \"error\", \"message\": \"Colors data not found in the settings.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"status\": \"error\", \"message\": \"Failed to update colors.\", \"error\": \"Validation or server error details.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Configuration - Settings - Update module configuration",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/setting\/configuration",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/setting\/configuration",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aleacademy",
                                    "description": "The slug of the school to scope the settings."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"module\":\"users\",\"plural_name\":\"Users\",\"singular_name\":\"User\",\"plural_name_es\":\"Usuarios\",\"singular_name_es\":\"Usuario\",\"section\":\"general\",\"form\":\"profile_form\",\"subsection\":\"details\",\"form_section\":\"address_section\",\"fields\":[{\"label_en\":\"First Name\",\"label_es\":\"Nombre\"}],\"custom_fields\":[{\"label_en\":\"Gender\",\"label_es\":\"G\u00e9nero\",\"type\":\"select\",\"options\":[{\"name_en\":\"Male\",\"name_es\":\"Hombre\"},{\"name_en\":\"Female\",\"name_es\":\"Mujer\"}]}]}"
                        },
                        "description": "Updates a module's configuration for the given school. Required permission: administrative.setting.configuration.update.\nOnly the school's creator can perform this action. You can update module names and, optionally, form fields and custom fields."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"response\": {\n      \"id\": 1,\n      \"parent_id\": 1,\n      \"language\": \"en\",\n      \"colors\": { \"primary\": \"#000000\", \"secondary\": \"#FFFFFF\" },\n      \"icons\": \"default\",\n      \"url\": \"https:\/\/example.com\",\n      \"setting\": {\n          \"modules\": [\n              {\n                  \"id\": \"1\",\n                  \"plural_name\": \"Users\",\n                  \"singular_name\": \"User\",\n                  \"plural_name_es\": \"Usuarios\",\n                  \"singular_name_es\": \"Usuario\",\n                  \"sections\": [\n                      {\n                          \"default_name\": \"general\",\n                          \"forms\": [\n                              {\n                                  \"default_name\": \"profile_form\",\n                                  \"fields\": [\n                                      { \"label_en\": \"First Name\", \"label_es\": \"Nombre\" }\n                                  ],\n                                  \"custom_fields\": [\n                                      {\n                                          \"name\": \"gender\",\n                                          \"type\": \"select\",\n                                          \"label_en\": \"Gender\",\n                                          \"label_es\": \"G\u00e9nero\",\n                                          \"options\": [\n                                              { \"name_en\": \"Male\", \"name_es\": \"Hombre\", \"value\": \"Male\" },\n                                              { \"name_en\": \"Female\", \"name_es\": \"Mujer\", \"value\": \"Female\" }\n                                          ]\n                                      }\n                                  ]\n                              }\n                          ]\n                      }\n                  ]\n              }\n          ]\n      },\n      \"created_at\": \"2025-01-10T12:00:00.000000Z\",\n      \"updated_at\": \"2025-01-10T12:00:00.000000Z\"\n  },\n  \"status\": \"success\",\n  \"message\": \"The configuration was updated correctly! To see the changes, please reload the page.\"\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Module not found.\" }",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Staff",
            "description": "",
            "item": [
                {
                    "name": "Coach - List all coaches for a school",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/staff\/coaches",
                            "query": [
                                {
                                    "key": "view",
                                    "value": "select",
                                    "description": "optional Determines if the response is for a table or a select dropdown. Options: \"table\", \"select\". Defaults to \"table\".",
                                    "disabled": false
                                },
                                {
                                    "key": "per_page",
                                    "value": "15",
                                    "description": "optional Number of records per page. Defaults to 10.",
                                    "disabled": false
                                },
                                {
                                    "key": "only_archived",
                                    "value": "1",
                                    "description": "optional If true, retrieves only inactive coaches. Default is false.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters[0]",
                                    "value": "nam",
                                    "description": "optional Dynamic filters. Each filter must include `column`, `operator`, and `value`.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bcolumn%5D",
                                    "value": "status",
                                    "description": "The name of the column to filter by.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Boperator%5D",
                                    "value": "not_equals",
                                    "description": "The filter operator. Options: contains, not_contains, equals, not_equals, less_than, greater_than, between, empty, not_empty.",
                                    "disabled": false
                                },
                                {
                                    "key": "filters%5B0%5D%5Bvalue%5D",
                                    "value": "inactive",
                                    "description": "mixed The value to compare. Use an array for \"between\" operator.",
                                    "disabled": false
                                },
                                {
                                    "key": "sort_by",
                                    "value": "first_name",
                                    "description": "optional Column to sort results by. Must be a valid column name.",
                                    "disabled": false
                                },
                                {
                                    "key": "direction",
                                    "value": "desc",
                                    "description": "optional Sort direction. Options: asc, desc. Default is asc.",
                                    "disabled": false
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/staff\/coaches?view=select&per_page=15&only_archived=1&filters[0]=nam&filters%5B0%5D%5Bcolumn%5D=status&filters%5B0%5D%5Boperator%5D=not_equals&filters%5B0%5D%5Bvalue%5D=inactive&sort_by=first_name&direction=desc",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "id",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The ID of the school to list coaches for."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a paginated list of users with the \"Coach\" role associated to the specified school.\nSupports view=table\/select, filters, sorting and pagination.\nRequired permission: administrative.staff.coach.index."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n   \"data\": [\n       {\n           \"id\": 15,\n           \"name\": \"Carlos Lozano\",\n           \"email\": \"carlos.lozano@example.com\",\n           \"status\": \"active\",\n           \"school\": {\n               \"id\": 2,\n               \"nickname\": \"Academia F\u00fatbol\"\n           },\n           \"created_at\": \"2025-02-01T12:00:00.000000Z\",\n           \"updated_at\": \"2025-02-01T12:00:00.000000Z\"\n       }\n   ],\n   \"meta\": {\n       \"current_page\": 1,\n       \"per_page\": 10,\n       \"total\": 50\n   }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"School not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coach - Store or Update",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/staff\/coaches",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/staff\/coaches",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "voluptatem",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The ID of the school the coach will belong to."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "multipart\/form-data"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "formdata",
                            "formdata": [
                                {
                                    "key": "id",
                                    "value": "10",
                                    "type": "text",
                                    "description": "optional Coach id to update."
                                },
                                {
                                    "key": "first_name",
                                    "value": "Andrew",
                                    "type": "text",
                                    "description": "First name."
                                },
                                {
                                    "key": "last_name",
                                    "value": "Ramirez",
                                    "type": "text",
                                    "description": "Last name."
                                },
                                {
                                    "key": "gender",
                                    "value": "male",
                                    "type": "text",
                                    "description": "optional Gender (male,female,other)."
                                },
                                {
                                    "key": "date_birth",
                                    "value": "1985-09-15",
                                    "type": "text",
                                    "description": "optional Date of birth (YYYY-MM-DD)."
                                },
                                {
                                    "key": "id_number",
                                    "value": "9876543210",
                                    "type": "text",
                                    "description": "optional Identification number."
                                },
                                {
                                    "key": "language",
                                    "value": "en",
                                    "type": "text",
                                    "description": "optional Preferred language."
                                },
                                {
                                    "key": "phone_code",
                                    "value": "1",
                                    "type": "text",
                                    "description": "optional Phone country code."
                                },
                                {
                                    "key": "billing_phone_number",
                                    "value": "+17865551234",
                                    "type": "text",
                                    "description": "optional Billing phone."
                                },
                                {
                                    "key": "secondary_phone_number",
                                    "value": "dgsqdhntqwnyvboj",
                                    "type": "text",
                                    "description": "Must not be greater than 40 characters."
                                },
                                {
                                    "key": "billing_email",
                                    "value": "billing@company.com",
                                    "type": "text",
                                    "description": "Billing email and user's email."
                                },
                                {
                                    "key": "secondary_email",
                                    "value": "stamm.althea@example.net",
                                    "type": "text",
                                    "description": "Must be a valid email address. Must not be greater than 120 characters."
                                },
                                {
                                    "key": "billing_country",
                                    "value": "Argentina",
                                    "type": "text",
                                    "description": "optional Billing country."
                                },
                                {
                                    "key": "billing_state",
                                    "value": "Buenos Aires",
                                    "type": "text",
                                    "description": "optional Billing state."
                                },
                                {
                                    "key": "billing_city",
                                    "value": "lknwsqogrutzywztlojny",
                                    "type": "text",
                                    "description": "Must not be greater than 80 characters."
                                },
                                {
                                    "key": "billing_address",
                                    "value": "1234 Corrientes Ave, CABA",
                                    "type": "text",
                                    "description": "optional Billing address."
                                },
                                {
                                    "key": "billing_zip_code",
                                    "value": "C1043AAU",
                                    "type": "text",
                                    "description": "optional Billing zip code."
                                },
                                {
                                    "key": "has_medical_conditions",
                                    "value": "1",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "medical_details",
                                    "value": "wuqedbuway",
                                    "type": "text",
                                    "description": "This field is required when <code>has_medical_conditions<\/code> is <code>1<\/code>. Must not be greater than 1000 characters."
                                },
                                {
                                    "key": "schedules[0]",
                                    "value": "et",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "school_ids[0]",
                                    "value": "5",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "school_ids[1]",
                                    "value": "8",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "school_ids[2]",
                                    "value": "12",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "custom_fields[0]",
                                    "value": "nam",
                                    "type": "text",
                                    "description": ""
                                },
                                {
                                    "key": "image",
                                    "src": [],
                                    "type": "file"
                                }
                            ]
                        },
                        "description": "Create or update a Coach user\/profile for the specified school.\n- If `id` is not provided a new user is created and a random password is generated and emailed.\n- The \"Coach\" role is assigned and the user is synced to the specified school plus any `school_ids`.\n- Supports uploading an `image` (multipart) and `schedules` sent either as a JSON string (useful in multipart)\n  or as indexed form fields (e.g. schedules_0_day_of_week, schedules_0_start_time)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Profile updated successfully\", \"coach\": { ... } }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 201,
                            "body": "{ \"message\": \"Profile created successfully\", \"coach\": { ... } }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 413,
                            "body": "{ \"message\": \"Request Entity Too Large. File exceeds maximum size limit.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{ \"message\": \"This email is already registered for another user.\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coach - Show",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "praesentium",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the Coach to retrieve."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The ID of the school to scope the coach lookup."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Retrieve a Coach by id for the specified school. The response includes the coach's user data,\nprofile (and its media), associated schools and schedules.\n\nNotes:\n- The request checks the permission `administrative.staff.coach.show` for the authenticated user.\n- The coach must be associated with the provided `school` (else a 404 is returned)."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"coach\": {\n    \"id\": 10,\n    \"user_name\": \"andrew.ramirez1\",\n    \"name\": \"Andrew Ramirez\",\n    \"email\": \"andrew.ramirez@email.com\",\n    \"profile\": {\n      \"id\": 4,\n      \"user_id\": 10,\n      \"first_name\": \"Andrew\",\n      \"last_name\": \"Ramirez\",\n      \"gender\": \"male\",\n      \"date_birth\": \"1985-09-15\",\n      \"id_number\": \"9876543210\",\n      \"language\": \"en\",\n      \"billing_phone_number\": \"+17865551234\",\n      \"billing_country\": \"Argentina\",\n      \"billing_email\": \"billing@company.com\",\n      \"billing_state\": \"Buenos Aires\",\n      \"billing_address\": \"1234 Corrientes Ave, CABA\",\n      \"billing_zip_code\": \"C1043AAU\",\n      \"image_url\": \"https:\/\/s3-bucket-url.com\/profile123.jpg\",\n      \"custom_fields\": [\n        {\"slug\": \"whatsapp\", \"value\": \"+17865559999\"}\n      ]\n    },\n    \"schools\": [\n      { \"id\": 5, \"nickname\": \"Elite Football Academy\" },\n      { \"id\": 8, \"nickname\": \"National Soccer Academy\" }\n    ],\n    \"schedules\": [ { \"day_of_week\": \"monday\", \"start_time\": \"14:00\", \"end_time\": \"20:00\" } ]\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Coach not found or not associated with this school\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Coach - Archive (soft) a Coach",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/staff\/coaches\/:id",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "laudantium",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "10",
                                    "description": "The ID of the Coach to archive."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The ID of the school used to scope the operation."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Marks a coach (and its profile) as archived\/inactive without deleting records.\n- The authenticated user must have the permission `administrative.staff.coach.delete`.\n- The coach must be associated with the provided `school` - otherwise a 404 is returned."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{ \"message\": \"Coach archived successfully.\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{ \"message\": \"Unauthorized\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"message\": \"Coach not found or unauthorized.\" }",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Sync",
            "description": "",
            "item": [
                {
                    "name": "Account - Sync whit zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/accounts",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/accounts",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "quae",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes accounts from Zoho and creates users linked to a specified school."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Leads - Sync with Zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/leads",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/leads",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "aut",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes leads from Zoho and stores them in the local database."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Player - Sync whit zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/players",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/players",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "consequuntur",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes players from Zoho and creates users linked to a specified school."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Group - Sync whit zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/groups",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/groups",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "id",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes groups from Zoho and creates groups linked to a specified school."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Player Vs Group - Sync whit zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/player_goups",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/player_goups",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "voluptatum",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes Cont Vs Group from Zoho and creates users linked to a specified school."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Service Catalog - Sync with Zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/service_catalogs",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/service_catalogs",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "velit",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes service catalog from Zoho and stores the data in the database."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Subscription - Sync with Zoho",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/zoho\/subscriptions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/zoho\/subscriptions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "omnis",
                                    "description": "The slug of the school."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Synchronizes subscriptions from Zoho and creates or updates subscriptions in the database."
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 401,
                            "body": "{\"message\":\"Unauthenticated.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "QuickBooks - Sync Recurring Subscriptions",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/schools\/:school_slug\/sync\/quickbooks\/sync-subscriptions",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/schools\/:school_slug\/sync\/quickbooks\/sync-subscriptions",
                            "variable": [
                                {
                                    "id": "school_slug",
                                    "key": "school_slug",
                                    "value": "magnam",
                                    "description": "The slug of the school."
                                },
                                {
                                    "id": "school",
                                    "key": "school",
                                    "value": "5",
                                    "description": "The school id to sync subscriptions for."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Triggers a synchronization of active RecurringTransaction templates from QuickBooks Online\ninto the local subscriptions system for the specified school. The controller will use the\nconfigured QuickBooks credentials (and refresh the access token if necessary).\n\nNote: the method currently runs synchronously and returns once the sync attempt completes."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"message\": \"QuickBooks recurring templates synchronized successfully\"\n}",
                            "name": "success"
                        },
                        {
                            "header": [],
                            "code": 401,
                            "body": "{\n  \"message\": \"Unauthenticated.\"\n}",
                            "name": "unauthorized"
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{\n  \"message\": \"Error synchronizing with QuickBooks\"\n}",
                            "name": "error"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Utilities",
            "description": "This endpoint is not scoped to a specific school \u2014 it is available under\n`\/api\/metadata\/filter-operators` and requires authentication (auth:sanctum).",
            "item": [
                {
                    "name": "Countries - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/locations\/countries",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/locations\/countries"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a flattened list of countries loaded from JSON files under storage\/app\/locations.\nFiles named `select_countries.json` are intentionally excluded.\n\nSource files are expected under `storage\/app\/locations` and may be split across multiple JSON files.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  { \"id\": \"Afghanistan\", \"name\": \"Afghanistan\" },\n  { \"id\": \"Albania\", \"name\": \"Albania\" }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"error\": \"Location directory not found\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Phone codes - List",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/locations\/phone-code",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/locations\/phone-code"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a normalized list of phone\/dial codes derived from `storage\/app\/locations\/countries.json`.\nThe response contains objects with these keys: `country_name`, `country_short_name` (ISO2) and\n`country_phone_code` (integer, dial code without the leading '+'). The method normalizes input keys\nfrom different sources (e.g. `dial_code`, `country_phone_code`, `calling_code`).",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  { \"country_name\": \"Afghanistan\", \"country_short_name\": \"AF\", \"country_phone_code\": 93 },\n  { \"country_name\": \"Albania\", \"country_short_name\": \"AL\", \"country_phone_code\": 355 }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"error\": \"countries.json not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"error\": \"Invalid countries.json\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "States - List by Country",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/locations\/:country\/states",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/locations\/:country\/states",
                            "variable": [
                                {
                                    "id": "country",
                                    "key": "country",
                                    "value": "Afghanistan",
                                    "description": "Country name or code. Spaces are replaced by underscores to match file names."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the list of states for a given country loaded from JSON files under storage\/app\/locations\/states.\nThe controller normalizes the provided `country` by replacing spaces with underscores to build the filename.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  { \"state_name\": \"Badakhshan\" },\n  { \"state_name\": \"Badgis\" }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"error\": \"Country not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"error\": \"Invalid data file\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Cities - List by Country and State",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/locations\/:country\/:state\/cities",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/locations\/:country\/:state\/cities",
                            "variable": [
                                {
                                    "id": "country",
                                    "key": "country",
                                    "value": "Afghanistan",
                                    "description": "Country name or code. Spaces will be replaced with underscores to match filenames."
                                },
                                {
                                    "id": "state",
                                    "key": "state",
                                    "value": "Badakhshan",
                                    "description": "State name. Spaces will be replaced with underscores to match filenames."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns all cities for a given state in a given country. Data is loaded from\n`storage\/app\/locations\/cities\/{country}\/{state}.json`. Inputs are normalized by\nreplacing spaces with underscores when building the filename.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  { \"city_name\": \"Eshkashem\" }\n]",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{ \"error\": \"State not found\" }",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 500,
                            "body": "{ \"error\": \"Invalid data file\" }",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Get available filter operators",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/metadata\/filter-operators",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/metadata\/filter-operators"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "This endpoint returns a list of supported filter operators that can be used in dynamic search\/filter features. Each operator includes labels in English and Spanish for internationalization purposes."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"operators\": [\n    {\n      \"value\": \"contains\",\n      \"label\": {\n        \"es\": \"Contiene\",\n        \"en\": \"Contains\"\n      }\n    },\n    {\n      \"value\": \"not_equals\",\n      \"label\": {\n        \"es\": \"Diferente de\",\n        \"en\": \"Not equal to\"\n      }\n    },\n    {\n      \"value\": \"empty\",\n      \"label\": {\n        \"es\": \"Vac\u00edo\",\n        \"en\": \"Empty\"\n      }\n    }\n    \/\/ ... other operators\n  ]\n}",
                            "name": ""
                        }
                    ]
                }
            ]
        }
    ],
    "auth": {
        "type": "bearer",
        "bearer": [
            {
                "key": "key",
                "type": "string"
            }
        ]
    }
}