{
    "openapi": "3.0.0",
    "info": {
        "title": "RapidPass API",
        "description": "API documentation for the RapidPass system",
        "version": "1.0.0"
    },
    "paths": {
        "/api/about-us": {
            "get": {
                "tags": [
                    "About Us"
                ],
                "summary": "Get active About Us content",
                "description": "Returns a list of active About Us content sections. Requires authentication.",
                "operationId": "getAboutUsContent",
                "responses": {
                    "200": {
                        "description": "About Us content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "About Us content retrieved successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title_en": "Title in English",
                                            "title_bn": "Title in Bangla",
                                            "description_en": "Description in English",
                                            "description_bn": "Description in Bangla",
                                            "serial": 1,
                                            "images": "https://example.com/image/1751974831-aurora.jpg",
                                            "status": "Active",
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/register": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Register a new user with mobile and OTP",
                "operationId": "7b7d9f145c573b3f98473d32bde11f94",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "first_name",
                                    "last_name",
                                    "mobile",
                                    "email",
                                    "password",
                                    "password_confirmation"
                                ],
                                "properties": {
                                    "first_name": {
                                        "type": "string",
                                        "example": "John"
                                    },
                                    "last_name": {
                                        "type": "string",
                                        "example": "Doe"
                                    },
                                    "mobile": {
                                        "type": "string",
                                        "example": "01700000000"
                                    },
                                    "email": {
                                        "type": "string",
                                        "example": "yourmail@gmail.com"
                                    },
                                    "password": {
                                        "type": "string",
                                        "example": "password123"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "example": "password123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "User created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Login successful",
                                    "status": 200,
                                    "data": {
                                        "access_token": "eyJ0eXAiOiJKV1QiLCJhb...",
                                        "token_type": "bearer",
                                        "expires_in": 3600,
                                        "user": {
                                            "id": 66,
                                            "first_name": "John",
                                            "last_name": "Doe",
                                            "email": "yourmail@gmail.com",
                                            "mobile": "01700000000",
                                            "email_verified_at": null,
                                            "mobile_verified_at": "2025-07-09 14:28:03",
                                            "status": "Active",
                                            "created_at": "2025-07-09 14:27:32",
                                            "updated_at": "2025-07-09 14:27:32"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/verify-register": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Verify OTP for a mobile number verify",
                "operationId": "4fb5a04ac2a92a49ff83d1c97d9a5590",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "mobile",
                                    "otp"
                                ],
                                "properties": {
                                    "mobile": {
                                        "type": "string",
                                        "example": "01700000000"
                                    },
                                    "otp": {
                                        "type": "string",
                                        "example": "123456"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "User created successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "OTP verified successfully",
                                    "status": 200,
                                    "data": {
                                        "access_token": "eyJ0eXAiOiJKV1QiLCJhb...",
                                        "token_type": "bearer",
                                        "expires_in": 3600,
                                        "user": {
                                            "id": 66,
                                            "first_name": "John",
                                            "last_name": "Doe",
                                            "email": "yourmail@gmail.com",
                                            "mobile": "01700000000",
                                            "email_verified_at": null,
                                            "mobile_verified_at": "2025-07-09 14:28:03",
                                            "status": "Active",
                                            "created_at": "2025-07-09 14:27:32",
                                            "updated_at": "2025-07-09 14:27:32"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/login": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "User login with email or mobile",
                "description": "Authenticate user using email or mobile and password, then returns access token.",
                "operationId": "loginUser",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "email_or_mobile",
                                    "password"
                                ],
                                "properties": {
                                    "email_or_mobile": {
                                        "description": "Email or 11-digit mobile number",
                                        "type": "string",
                                        "example": "user@example.com or 01712345678"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "secret1234"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "User login successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Login successful",
                                    "status": 200,
                                    "data": {
                                        "access_token": "eyJ0eXAiOiJKV1QiLCJhb...",
                                        "token_type": "bearer",
                                        "expires_in": 3600,
                                        "user": {
                                            "id": 66,
                                            "first_name": "John",
                                            "last_name": "Doe",
                                            "email": "yourmail@gmail.com",
                                            "mobile": "01700000000",
                                            "email_verified_at": null,
                                            "mobile_verified_at": "2025-07-09 14:28:03",
                                            "status": "Active",
                                            "created_at": "2025-07-09 14:27:32",
                                            "updated_at": "2025-07-09 14:27:32"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/delete": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "User delete with email or mobile",
                "description": "Authenticate user using email or mobile and password, then returns access token.",
                "operationId": "deleteUser",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "email_or_mobile",
                                    "password"
                                ],
                                "properties": {
                                    "email_or_mobile": {
                                        "description": "Email or 11-digit mobile number",
                                        "type": "string",
                                        "example": "user@example.com or 01712345678"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "secret1234"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "User deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "User has been deleted.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/logout": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Logout the authenticated user",
                "description": "Logs out the currently authenticated user and invalidates the token.",
                "operationId": "logoutUser",
                "responses": {
                    "200": {
                        "description": "Successfully logged out",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Successfully logged out.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/forget-password": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Request password reset via mobile OTP",
                "description": "Sends a one-time password (OTP) to the user's registered mobile for password reset.",
                "operationId": "forgetPasswordOtp",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "mobile"
                                ],
                                "properties": {
                                    "mobile": {
                                        "type": "string",
                                        "example": "01712345678"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OTP sent successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "OTP sent successfully to your mobile number",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/verify-reset-otp": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Verify reset OTP for reset password",
                "description": "Sends a short lived bearer token to the user's response for reset password request.",
                "operationId": "verifyResetOtp",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "mobile"
                                ],
                                "properties": {
                                    "mobile": {
                                        "type": "string",
                                        "example": "01712345678"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OTP sent successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "OTP sent successfully to your mobile number",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/reset-password": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Reset password using OTP",
                "description": "Allows users to reset their password by verifying a valid OTP sent to their mobile number.",
                "operationId": "resetPasswordWithOtp",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "mobile",
                                    "otp",
                                    "password",
                                    "password_confirmation"
                                ],
                                "properties": {
                                    "mobile": {
                                        "type": "string",
                                        "example": "01712345678"
                                    },
                                    "otp": {
                                        "type": "string",
                                        "example": "123456"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "newpassword123"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "newpassword123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Password reset successful",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Password reset successfully",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/refresh": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Refresh token",
                "description": "Allows users to refresh token when needed.",
                "operationId": "refreshToken",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "mobile",
                                    "otp",
                                    "password",
                                    "password_confirmation"
                                ],
                                "properties": {
                                    "mobile": {
                                        "type": "string",
                                        "example": "01712345678"
                                    },
                                    "otp": {
                                        "type": "string",
                                        "example": "123456"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "newpassword123"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "newpassword123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Password reset successful",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Password reset successfully",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/cards": {
            "get": {
                "tags": [
                    "Cards"
                ],
                "summary": "Get user's cards",
                "description": "Returns a list of user registered and pending cards. Requires authentication.",
                "operationId": "7fa7a86210b06492a64fe45bdc81f778",
                "responses": {
                    "200": {
                        "description": "Card data loaded successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Card data loaded successfully.",
                                    "status": 200,
                                    "data": [
                                        {
                                            "user_id": 123,
                                            "card_number": "RP00000000000000",
                                            "hex_card_no": "0A01000000000000",
                                            "name": "John Doe",
                                            "phone_number": "017XXXXXXXX",
                                            "father_name": "Father Name",
                                            "mother_name": "Mother Name",
                                            "address": "123 Main Street",
                                            "date_of_birth": "1990-01-01",
                                            "gender": "Male",
                                            "nationality": "Bangladeshi",
                                            "photo_id": "NID",
                                            "photo_id_number": "1234567890",
                                            "balance": "100.00",
                                            "profession": "Engineer",
                                            "card_type": "RAPID_PASS",
                                            "server_status": "ACTIVE",
                                            "total_transactions": 10,
                                            "transaction_start_date": "2025-01-01 00:00:00",
                                            "transaction_end_date": "2025-07-10 00:00:00",
                                            "status": "Active",
                                            "sync_status": "Synced",
                                            "pending_at": null,
                                            "synced_at": "2025-07-10 14:50:20",
                                            "update_at": null,
                                            "unsynced_at": null,
                                            "transaction_history": [
                                                {
                                                    "phone_number": "017XXXXXXXX",
                                                    "card_number": "RP00000000000000",
                                                    "service_type": "Entry",
                                                    "transaction_data_id": "TXN001",
                                                    "sv_log_id": "LOG001",
                                                    "origin_station": "Station A",
                                                    "destination_station": "Station B",
                                                    "spent_amount": "-20",
                                                    "balance": "80",
                                                    "date_stamp": "2025-07-10",
                                                    "time_stamp": "10:00:00"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/card/check-status": {
            "post": {
                "tags": [
                    "Cards"
                ],
                "summary": "Check card registration status",
                "description": "Checks if the card is already registered and whether it's available for use.",
                "operationId": "checkCardStatus",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "card_number"
                                ],
                                "properties": {
                                    "card_number": {
                                        "type": "string",
                                        "example": "RP00000000000000"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "This card is available to register.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "This card is available to register.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/card/register": {
            "post": {
                "tags": [
                    "Cards"
                ],
                "summary": "Register a new card",
                "description": "Registers a new card after verifying card status and cardholder information.",
                "operationId": "registerCard",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "card_number",
                                    "name",
                                    "father_name",
                                    "mother_name",
                                    "address",
                                    "date_of_birth",
                                    "gender",
                                    "nationality",
                                    "photo_id",
                                    "photo_id_number",
                                    "profession"
                                ],
                                "properties": {
                                    "card_number": {
                                        "type": "string",
                                        "example": "RP11111111111111"
                                    },
                                    "name": {
                                        "type": "string",
                                        "example": "User Name"
                                    },
                                    "father_name": {
                                        "type": "string",
                                        "example": "Father Name"
                                    },
                                    "mother_name": {
                                        "type": "string",
                                        "example": "Mother Name"
                                    },
                                    "address": {
                                        "type": "string",
                                        "example": "DTCA Building, Love Road, Tejgaon, Dhaka 1208"
                                    },
                                    "date_of_birth": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "1990-01-01"
                                    },
                                    "gender": {
                                        "type": "string",
                                        "example": "Male or Female"
                                    },
                                    "nationality": {
                                        "type": "string",
                                        "example": "Bangladeshi"
                                    },
                                    "photo_id": {
                                        "type": "string",
                                        "example": "NID or BIRTH_CERTIFICATE or PASSPORT or DRIVING_LICENSE"
                                    },
                                    "photo_id_number": {
                                        "type": "string",
                                        "example": "\n     *                      NID: {type: 'digits', max: 17, min: 10},\n     *                      BIRTH_CERTIFICATE: {type: 'digits', max: 17},\n     *                      PASSPORT: {type: 'alphanumeric', max: 9},\n     *                      DRIVING_LICENSE: {type: 'alphanumeric', max: 17, min: 13}\n     *             "
                                    },
                                    "profession": {
                                        "type": "string",
                                        "example": "Doctor"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "This card register successfully.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Card created successfully.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/card/update": {
            "post": {
                "tags": [
                    "Cards"
                ],
                "summary": "Update an existing card",
                "description": "Updates a registered card's personal details if it belongs to the authenticated user.",
                "operationId": "updateCard",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "card_number",
                                    "name",
                                    "father_name",
                                    "mother_name",
                                    "address",
                                    "date_of_birth",
                                    "gender",
                                    "nationality",
                                    "photo_id",
                                    "photo_id_number",
                                    "profession"
                                ],
                                "properties": {
                                    "card_number": {
                                        "type": "string",
                                        "example": "1234567890123456"
                                    },
                                    "name": {
                                        "type": "string",
                                        "example": "Samiul Hoque"
                                    },
                                    "father_name": {
                                        "type": "string",
                                        "example": "Father Name"
                                    },
                                    "mother_name": {
                                        "type": "string",
                                        "example": "Mother Name"
                                    },
                                    "address": {
                                        "type": "string",
                                        "example": "123 Main Street, Dhaka"
                                    },
                                    "date_of_birth": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "1990-01-01"
                                    },
                                    "gender": {
                                        "type": "string",
                                        "example": "Male"
                                    },
                                    "nationality": {
                                        "type": "string",
                                        "example": "Bangladeshi"
                                    },
                                    "photo_id": {
                                        "type": "string",
                                        "example": "NID"
                                    },
                                    "photo_id_number": {
                                        "type": "string",
                                        "example": "1987654321"
                                    },
                                    "profession": {
                                        "type": "string",
                                        "example": "Engineer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "This card updated successfully.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Card updated successfully.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/card/sync": {
            "post": {
                "tags": [
                    "Cards"
                ],
                "summary": "Sync user card information",
                "description": "Resets the user's last_synced_at and syncs their existing card information from the external service.",
                "operationId": "syncUserCard",
                "responses": {
                    "200": {
                        "description": "This card sync successfully.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Card sync successfully.",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contact-us": {
            "post": {
                "tags": [
                    "Contact"
                ],
                "summary": "Submit a contact us message",
                "description": "Saves a contact message and optionally emails the admin. Requires no authentication.",
                "operationId": "contactUs",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "name",
                                    "email",
                                    "subject",
                                    "message"
                                ],
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "example": "John Doe"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "john@example.com"
                                    },
                                    "subject": {
                                        "type": "string",
                                        "example": "Feedback about the app"
                                    },
                                    "message": {
                                        "type": "string",
                                        "example": "I really like the new feature you added!"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Message sent successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Message sent successfully",
                                    "status": 200
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/news": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active detailed news list",
                "description": "Returns a list of news items. Requires authentication.",
                "operationId": "getNewsList",
                "responses": {
                    "200": {
                        "description": "News content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "News data loaded successfully.",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title_en": "Title in English",
                                            "title_bn": "Title in Bangla",
                                            "description_en": "<p>Description in English</p>",
                                            "description_bn": "<p>Description in Bangla</p>",
                                            "date": "2012-12-12",
                                            "published_by": 1,
                                            "images": "https://example.com/image/1751974831-aurora.jpg",
                                            "external_link": null,
                                            "status": "Active",
                                            "is_top": "Active",
                                            "is_detail": "Active",
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/faqs": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active FAQ list",
                "description": "Returns a list of active Frequently Asked Questions. Requires authentication.",
                "operationId": "getFaqsList",
                "responses": {
                    "200": {
                        "description": "Faq content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "FAQs data loaded successfully.",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "question_en": "Can I get a refund of my Rapid Pass balance?",
                                            "question_bn": "Rapid Pass এর টাকা ফেরত পাওয়া যাবে কি?",
                                            "answer_en": "You can get a refund of your remaining balance when cancelling the card. Specific fees and procedures apply",
                                            "answer_bn": "কার্ড বাতিলের সময় অবশিষ্ট ব্যালেন্স ফেরত নেওয়া যাবে। নির্ধারিত ফি এবং প্রক্রিয়া অনুসরণ করতে হবে।",
                                            "status": "Active",
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/updates": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active updates list",
                "description": "Returns a list of active updates/announcements. Requires authentication.",
                "operationId": "getUpdatesList",
                "responses": {
                    "200": {
                        "description": "Updates content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Updates content retrieved successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title_en": "Title in English",
                                            "title_bn": "Title in Bangla",
                                            "description_en": "<p>Description in English</p>",
                                            "description_bn": "<p>Description in Bangla</p>",
                                            "datetime": "2025-04-23 14:20:29",
                                            "published_by": 1,
                                            "images": "https://example.com/image/1751974831-aurora.jpg",
                                            "status": "Active",
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/hotline": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active hotline list",
                "description": "Returns a list of active hotline contacts. Requires authentication.",
                "operationId": "getHotlinesList",
                "responses": {
                    "200": {
                        "description": "Hotline content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Hotline content retrieved successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title": "Title",
                                            "images": "https://example.com/image/1751974831-aurora.jpg",
                                            "link": null,
                                            "status": "Active",
                                            "serial": 1,
                                            "published_by": 1,
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/videos": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active video list",
                "description": "Returns a list of active video items. Requires authentication.",
                "operationId": "getVideosList",
                "responses": {
                    "200": {
                        "description": "About Us content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "About Us content retrieved successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title": "Title",
                                            "images": "https://example.com/image/1751974831.jpg",
                                            "link": "https://www.youtube.com/watch?v=z3z1MjENJ-w",
                                            "status": "Active",
                                            "serial": 1,
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/side-images": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active side images list",
                "description": "Returns a list of active side images (e.g., banners, promotional images). Requires authentication.",
                "operationId": "getSideImagesList",
                "responses": {
                    "200": {
                        "description": "About Us content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "About Us content retrieved successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title": "Title",
                                            "images": "https://example.com/image/1751974831-aurora.jpg",
                                            "status": "Active",
                                            "serial": 1,
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/gallery": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get a list of active image galleries",
                "description": "Returns a list of active image galleries, with their associated images. Requires authentication.",
                "operationId": "getGalleriesList",
                "responses": {
                    "200": {
                        "description": "Gallery content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Gallery data loaded successfully.",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title_en": "Rapid pass images",
                                            "title_bn": "র‍্যাপিড পাসের ছবি",
                                            "description_en": null,
                                            "description_bn": null,
                                            "status": "Active",
                                            "images": [
                                                {
                                                    "id": 5,
                                                    "gallery_id": 1,
                                                    "name": "1752045070.jpg",
                                                    "size": "70178",
                                                    "url": "https://example.com/storage/galleries/1752045070.jpg",
                                                    "created_at": "2025-04-23 13:27:19",
                                                    "updated_at": "2025-04-23 13:36:12"
                                                }
                                            ],
                                            "created_at": "2025-04-23 13:27:19",
                                            "updated_at": "2025-04-23 13:36:12"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/download": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active downloads list",
                "description": "Returns a list of active downloadable files. Requires authentication.",
                "operationId": "getDownloadsList",
                "responses": {
                    "200": {
                        "description": "Downloads content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Download data loaded successfully.",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "title_en": "Title in English",
                                            "title_bn": "Title in Bangla",
                                            "file": "https://example.com/storage/download/form.pdf",
                                            "link": "null",
                                            "status": "Active",
                                            "serial": 1,
                                            "created_at": "2025-07-09 11:56:07",
                                            "updated_at": "2025-07-09 11:56:09"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/privacy-policy": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active privacy policy",
                "description": "Returns a privacy policy content.",
                "operationId": "getPrivacyPolicy",
                "responses": {
                    "200": {
                        "description": "Privacy Policy content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Privacy Policy data loaded successfully.",
                                    "status": 200,
                                    "data": {
                                        "description": "<div> Hello World!! <div/>"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/terms-conditions": {
            "get": {
                "tags": [
                    "Web"
                ],
                "summary": "Get active terms conditions",
                "description": "Returns a terms conditions content.",
                "operationId": "getTermsConditions",
                "responses": {
                    "200": {
                        "description": "Terms conditions content fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Terms conditions data loaded successfully.",
                                    "status": 200,
                                    "data": {
                                        "description": "<div> Hello World!! <div/>"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/BadRequestResponse"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthorized",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/UnauthorizedResponse"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation Error",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ValidationErrorResponse"
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TooManyRequestsResponse"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/instruction": {
            "get": {
                "tags": [
                    "Instruction"
                ],
                "summary": "Get active instructions",
                "description": "Returns a list of active transports along with their active instructions. Requires authentication.",
                "operationId": "getInstruction",
                "responses": {
                    "200": {
                        "description": "Instruction data fetched successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true,
                                    "message": "Instruction data loaded successfully",
                                    "status": 200,
                                    "data": [
                                        {
                                            "id": 1,
                                            "name_en": "Bus",
                                            "name_bn": "বাস",
                                            "serial": 1,
                                            "status": "Active",
                                            "instructions": [
                                                {
                                                    "id": 1,
                                                    "instruction_en": "Follow safety rules",
                                                    "instruction_bn": "নিরাপত্তা নিয়ম মেনে চলুন",
                                                    "serial": 1,
                                                    "status": "Active",
                                                    "image": "https://example.com/storage/instructions/instruction1.jpg"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "422": {
                        "description": "Validation Error"
                    },
                    "429": {
                        "description": "Too Many Requests"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "AboutUsResource": {
                "title": "About Us Resource",
                "description": "About Us content item",
                "properties": {
                    "id": {
                        "description": "ID of the About Us entry",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title_en": {
                        "description": "Title of the section in English",
                        "type": "string"
                    },
                    "title_bn": {
                        "description": "Title of the section in Bengali",
                        "type": "string"
                    },
                    "description_en": {
                        "description": "Description content in English",
                        "type": "string"
                    },
                    "description_bn": {
                        "description": "Description content in Bengali",
                        "type": "string"
                    },
                    "serial": {
                        "description": "Display order/serial number of the section",
                        "type": "integer"
                    },
                    "images": {
                        "description": "URL or path to an image associated with the section",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the section (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "created_at": {
                        "description": "Timestamp when the entry was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the entry was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "Card": {
                "title": "Card",
                "properties": {
                    "user_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "card_number": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "1234567890"
                    },
                    "hex_card_no": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "ABCDEF123456"
                    },
                    "name": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "John Doe"
                    },
                    "phone_number": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "01712345678"
                    },
                    "father_name": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Mr. Father"
                    },
                    "mother_name": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Mrs. Mother"
                    },
                    "address": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "123 Main St, Dhaka"
                    },
                    "date_of_birth": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date",
                        "example": "1990-01-01"
                    },
                    "gender": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Male"
                    },
                    "nationality": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Bangladeshi"
                    },
                    "photo_id": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "NID"
                    },
                    "photo_id_number": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "1987654321"
                    },
                    "balance": {
                        "description": "$_dummy",
                        "type": "number",
                        "format": "float",
                        "example": 100.5
                    },
                    "profession": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Engineer"
                    },
                    "card_type": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "General"
                    },
                    "server_status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "ACTIVE"
                    },
                    "total_transactions": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 15
                    },
                    "transaction_start_date": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date",
                        "example": "2024-01-01"
                    },
                    "transaction_end_date": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date",
                        "example": "2024-06-30"
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Active"
                    },
                    "sync_status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Synced"
                    },
                    "pending_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-01T10:00:00Z",
                        "nullable": true
                    },
                    "synced_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-02T10:00:00Z",
                        "nullable": true
                    },
                    "update_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-03T10:00:00Z",
                        "nullable": true
                    },
                    "unsynced_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-04T10:00:00Z",
                        "nullable": true
                    },
                    "transaction_history": {
                        "description": "$_dummy",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TransactionHistory"
                        }
                    }
                },
                "type": "object"
            },
            "DownloadResource": {
                "title": "Download Resource",
                "description": "Downloadable file item object",
                "properties": {
                    "id": {
                        "description": "ID of the download entry",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title_en": {
                        "description": "Title of the downloadable item in English",
                        "type": "string"
                    },
                    "title_bn": {
                        "description": "Title of the downloadable item in Bengali",
                        "type": "string"
                    },
                    "file": {
                        "description": "Path or URL to the downloadable file",
                        "type": "string",
                        "example": "/storage/downloads/document.pdf"
                    },
                    "link": {
                        "description": "An external link for the download, if applicable (e.g., Google Drive link)",
                        "type": "string",
                        "format": "url",
                        "example": "https://docs.google.com/document/d/..."
                    },
                    "status": {
                        "description": "Status of the download entry (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "serial": {
                        "description": "Display order/serial number of the download",
                        "type": "integer"
                    },
                    "created_at": {
                        "description": "Timestamp when the download entry was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the download entry was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "FaqResource": {
                "title": "Faq Resource",
                "description": "Faq object",
                "properties": {
                    "id": {
                        "description": "ID of the FAQ",
                        "type": "integer",
                        "format": "int64"
                    },
                    "question": {
                        "description": "The question of the FAQ",
                        "type": "string"
                    },
                    "answer": {
                        "description": "The answer to the FAQ",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the FAQ (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "created_at": {
                        "description": "Timestamp when the FAQ was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the FAQ was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "FareMatrixResource": {
                "title": "Fare Matrix Resource",
                "description": "FareMatrix object",
                "properties": {
                    "id": {
                        "description": "ID of the FAQ",
                        "type": "integer",
                        "format": "int64"
                    },
                    "origin_station_id": {
                        "description": "The origin station id",
                        "type": "integer"
                    },
                    "destination_station_id": {
                        "description": "The destination station id",
                        "type": "integer"
                    },
                    "fare": {
                        "description": "Fare of from destination to destination",
                        "type": "integer"
                    },
                    "created_at": {
                        "description": "Timestamp when the Fare Matrix was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the Fare Matrix was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "GalleryImageResource": {
                "title": "Gallery Image Resource",
                "description": "An image belonging to a gallery",
                "properties": {
                    "id": {
                        "description": "ID of the gallery image",
                        "type": "integer",
                        "format": "int64"
                    },
                    "gallery_id": {
                        "description": "ID of the parent gallery",
                        "type": "integer",
                        "format": "int64"
                    },
                    "name": {
                        "description": "File name of the image",
                        "type": "string"
                    },
                    "size": {
                        "description": "Size of the image file in bytes",
                        "type": "integer",
                        "format": "int64"
                    },
                    "url": {
                        "description": "URL to access the image",
                        "type": "string",
                        "format": "url"
                    },
                    "created_at": {
                        "description": "Timestamp when the image was uploaded",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the image was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "GalleryResource": {
                "title": "Gallery Resource",
                "description": "A collection of images with localized titles and descriptions",
                "properties": {
                    "id": {
                        "description": "ID of the gallery",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title_en": {
                        "description": "Title of the gallery in English",
                        "type": "string"
                    },
                    "title_bn": {
                        "description": "Title of the gallery in Bengali",
                        "type": "string"
                    },
                    "description_en": {
                        "description": "Description of the gallery in English",
                        "type": "string"
                    },
                    "description_bn": {
                        "description": "Description of the gallery in Bengali",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the gallery (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "images": {
                        "description": "List of images belonging to this gallery",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/GalleryImageResource"
                        }
                    },
                    "created_at": {
                        "description": "Timestamp when the gallery was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the gallery was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "HotlineResource": {
                "title": "Hotline Resource",
                "description": "Hotline contact information object",
                "properties": {
                    "id": {
                        "description": "ID of the hotline entry",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title": {
                        "description": "Title or name of the hotline (e.g., 'Emergency Services', 'Customer Support')",
                        "type": "string"
                    },
                    "images": {
                        "description": "URL or path to an image associated with the hotline",
                        "type": "string"
                    },
                    "link": {
                        "description": "A contact link (e.g., phone number, website URL, email)",
                        "type": "string",
                        "example": "tel:+88017XXXXXXXX"
                    },
                    "status": {
                        "description": "Status of the hotline entry (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "serial": {
                        "description": "Display order/serial number of the hotline",
                        "type": "integer"
                    },
                    "published_by": {
                        "description": "The entity or person who published this hotline entry",
                        "type": "string"
                    },
                    "created_at": {
                        "description": "Timestamp when the hotline entry was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the hotline entry was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "InstructionResource": {
                "title": "Instruction Resource",
                "required": [
                    "instruction_en",
                    "status"
                ],
                "properties": {
                    "transport_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "instruction_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Follow safety rules"
                    },
                    "instruction_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "নিরাপত্তা নিয়ম মেনে চলুন"
                    },
                    "serial": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Active"
                    },
                    "image": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "url",
                        "nullable": true
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T14:00:00Z"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T15:00:00Z"
                    }
                },
                "type": "object"
            },
            "NewsResource": {
                "title": "News Resource",
                "required": [
                    "title_en",
                    "description_en",
                    "date"
                ],
                "properties": {
                    "title_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "News title in English"
                    },
                    "title_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "News title in Bengali"
                    },
                    "description_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Description in English"
                    },
                    "description_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Description in Bengali"
                    },
                    "date": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date",
                        "example": "2025-07-07"
                    },
                    "published_by": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Admin"
                    },
                    "images": {
                        "description": "$_dummy",
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "url"
                        }
                    },
                    "external_link": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "url",
                        "nullable": true
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Active"
                    },
                    "is_top": {
                        "description": "$_dummy",
                        "type": "boolean",
                        "example": false
                    },
                    "is_detail": {
                        "description": "$_dummy",
                        "type": "boolean",
                        "example": true
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T14:00:00Z"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T15:00:00Z"
                    }
                },
                "type": "object"
            },
            "OtpResource": {
                "title": "OTP Resource",
                "description": "Resource representing an OTP entry",
                "properties": {
                    "id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "user_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 10
                    },
                    "otp": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "123456"
                    },
                    "ip": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "ipv4",
                        "example": "192.168.1.1"
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "active"
                    },
                    "type": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "registration"
                    },
                    "reason": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "OTP for mobile verification"
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-08-18 12:34:56"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-08-18 12:45:00"
                    }
                },
                "type": "object"
            },
            "Recharge": {
                "title": "Recharge",
                "properties": {
                    "user_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "payment_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "card_id": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "1234567890"
                    },
                    "amount": {
                        "description": "$_dummy",
                        "type": "number",
                        "format": "float",
                        "example": 100.5
                    },
                    "gateway_type_id": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "1234567890"
                    },
                    "is_card_written": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": "0"
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "SUCCESS"
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-04T10:00:00Z",
                        "nullable": true
                    },
                    "update_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-06-03T10:00:00Z",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "SideImageResource": {
                "title": "Side Image Resource",
                "description": "Side image item object, typically used for banners or promotional images",
                "properties": {
                    "id": {
                        "description": "ID of the side image entry",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title": {
                        "description": "Title or alt text for the side image",
                        "type": "string"
                    },
                    "images": {
                        "description": "URL or path to the side image file",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the side image entry (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "serial": {
                        "description": "Display order/serial number of the side image",
                        "type": "integer"
                    },
                    "created_at": {
                        "description": "Timestamp when the side image entry was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the side image entry was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "StationResource": {
                "title": "Station Resource",
                "properties": {
                    "title_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "News title in English"
                    },
                    "title_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "News title in Bengali"
                    },
                    "description_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Description in English"
                    },
                    "description_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Description in Bengali"
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T14:00:00Z"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T15:00:00Z"
                    }
                },
                "type": "object"
            },
            "TransactionHistory": {
                "title": "TransactionHistory",
                "properties": {
                    "phone_number": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "01712345678"
                    },
                    "card_number": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "1234567890"
                    },
                    "service_type": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Recharge"
                    },
                    "transaction_data_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 101
                    },
                    "sv_log_id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 5001
                    },
                    "origin_station": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Uttara"
                    },
                    "destination_station": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Motijheel"
                    },
                    "spent_amount": {
                        "description": "$_dummy",
                        "type": "number",
                        "format": "float",
                        "example": 20.5
                    },
                    "balance": {
                        "description": "$_dummy",
                        "type": "number",
                        "format": "float",
                        "example": 79.5
                    },
                    "date_stamp": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date",
                        "example": "2025-07-01"
                    },
                    "time_stamp": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "08:45:00"
                    }
                },
                "type": "object"
            },
            "TransportResource": {
                "title": "Transport Resource",
                "required": [
                    "name_en",
                    "status"
                ],
                "properties": {
                    "name_en": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Bus"
                    },
                    "name_bn": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "বাস"
                    },
                    "serial": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Active"
                    },
                    "instructions": {
                        "description": "$_dummy",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InstructionResource"
                        }
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T14:00:00Z"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07T15:00:00Z"
                    }
                },
                "type": "object"
            },
            "UpdatesResource": {
                "title": "Updates Resource",
                "description": "Updates object",
                "properties": {
                    "id": {
                        "description": "ID of the update",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title_en": {
                        "description": "Title of the update in English",
                        "type": "string"
                    },
                    "title_bn": {
                        "description": "Title of the update in Bengali",
                        "type": "string"
                    },
                    "description_en": {
                        "description": "Full description of the update in English",
                        "type": "string"
                    },
                    "description_bn": {
                        "description": "Full description of the update in Bengali",
                        "type": "string"
                    },
                    "datetime": {
                        "description": "Date and time of the update",
                        "type": "string",
                        "format": "date-time"
                    },
                    "published_by": {
                        "description": "The entity or person who published the update",
                        "type": "string"
                    },
                    "images": {
                        "description": "Image URL or a JSON string of image URLs associated with the update",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status of the update (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "created_at": {
                        "description": "Timestamp when the update record was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the update record was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "UserResource": {
                "title": "User",
                "description": "User Resource",
                "properties": {
                    "id": {
                        "description": "$_dummy",
                        "type": "integer",
                        "example": 1
                    },
                    "first_name": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "John"
                    },
                    "last_name": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "Doe"
                    },
                    "email": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "email",
                        "example": "john.doe@example.com"
                    },
                    "mobile": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "01712345678"
                    },
                    "email_verified_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-07-07T12:00:00Z",
                        "nullable": true
                    },
                    "mobile_verified_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-07-07T12:00:00Z",
                        "nullable": true
                    },
                    "status": {
                        "description": "$_dummy",
                        "type": "string",
                        "example": "active"
                    },
                    "created_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07 10:00:00"
                    },
                    "updated_at": {
                        "description": "$_dummy",
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-07-07 12:00:00"
                    }
                },
                "type": "object"
            },
            "VideoResource": {
                "title": "Video Resource",
                "description": "Video item object",
                "properties": {
                    "id": {
                        "description": "ID of the video entry",
                        "type": "integer",
                        "format": "int64"
                    },
                    "title": {
                        "description": "Title of the video",
                        "type": "string"
                    },
                    "images": {
                        "description": "URL or path to the video thumbnail/preview image",
                        "type": "string"
                    },
                    "link": {
                        "description": "URL to the video content (e.g., YouTube link, direct video file)",
                        "type": "string",
                        "example": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
                    },
                    "status": {
                        "description": "Status of the video entry (e.g., Active, Inactive)",
                        "type": "string",
                        "example": "Active"
                    },
                    "serial": {
                        "description": "Display order/serial number of the video",
                        "type": "integer"
                    },
                    "created_at": {
                        "description": "Timestamp when the video entry was created",
                        "type": "string",
                        "format": "date-time"
                    },
                    "updated_at": {
                        "description": "Timestamp when the video entry was last updated",
                        "type": "string",
                        "format": "date-time"
                    }
                },
                "type": "object"
            },
            "BadRequestResponse": {
                "required": [
                    "success",
                    "message",
                    "status",
                    "error"
                ],
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": false
                    },
                    "message": {
                        "type": "string",
                        "example": "Bad Request"
                    },
                    "status": {
                        "type": "integer",
                        "example": 400
                    },
                    "error": {
                        "properties": {
                            "title": {
                                "type": "string",
                                "example": "Bad Request"
                            },
                            "detail": {
                                "type": "string",
                                "example": "Missing required fields"
                            },
                            "status": {
                                "type": "integer",
                                "example": 400
                            },
                            "timestamp": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-07-10T10:00:00Z"
                            }
                        },
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "SuccessResponse": {
                "required": [
                    "success",
                    "message",
                    "status",
                    "data"
                ],
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": true
                    },
                    "message": {
                        "type": "string",
                        "example": "Request was successful"
                    },
                    "status": {
                        "type": "integer",
                        "example": 200
                    },
                    "data": {
                        "description": "Dynamic content, varies by endpoint",
                        "type": "object",
                        "example": {
                            "id": 123,
                            "name": "John Doe",
                            "email": "john@example.com"
                        }
                    }
                },
                "type": "object"
            },
            "TooManyRequestsResponse": {
                "required": [
                    "success",
                    "message",
                    "status",
                    "error"
                ],
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": false
                    },
                    "message": {
                        "type": "string",
                        "example": "Too Many Requests"
                    },
                    "status": {
                        "type": "integer",
                        "example": 429
                    },
                    "error": {
                        "properties": {
                            "title": {
                                "type": "string",
                                "example": "Too Many Requests"
                            },
                            "detail": {
                                "type": "string",
                                "example": "You have reached the OTP request limit. Try again later."
                            },
                            "status": {
                                "type": "integer",
                                "example": 429
                            },
                            "timestamp": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-07-10T10:00:00Z"
                            }
                        },
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "UnauthorizedResponse": {
                "required": [
                    "success",
                    "message",
                    "status",
                    "error"
                ],
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": false
                    },
                    "message": {
                        "type": "string",
                        "example": "Unauthorized"
                    },
                    "status": {
                        "type": "integer",
                        "example": 401
                    },
                    "error": {
                        "properties": {
                            "title": {
                                "type": "string",
                                "example": "Unauthorized"
                            },
                            "detail": {
                                "type": "string",
                                "example": "Authentication failed or token expired"
                            },
                            "status": {
                                "type": "integer",
                                "example": 401
                            },
                            "timestamp": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-07-10T10:00:00Z"
                            }
                        },
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "ValidationErrorResponse": {
                "required": [
                    "success",
                    "message",
                    "status",
                    "error"
                ],
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": false
                    },
                    "message": {
                        "type": "string",
                        "example": "The given data was invalid."
                    },
                    "status": {
                        "type": "integer",
                        "example": 422
                    },
                    "error": {
                        "properties": {
                            "title": {
                                "type": "string",
                                "example": "Validation Failed"
                            },
                            "detail": {
                                "type": "string",
                                "example": "The email field is required."
                            },
                            "status": {
                                "type": "integer",
                                "example": 422
                            },
                            "timestamp": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-07-10T10:00:00Z"
                            }
                        },
                        "type": "object"
                    }
                },
                "type": "object"
            }
        },
        "responses": {
            "400": {
                "description": "Bad Request",
                "content": {
                    "application/json": {
                        "schema": {
                            "required": [
                                "success",
                                "message",
                                "status",
                                "error"
                            ],
                            "properties": {
                                "success": {
                                    "type": "boolean",
                                    "example": false
                                },
                                "message": {
                                    "type": "string",
                                    "example": "Bad Request"
                                },
                                "status": {
                                    "type": "integer",
                                    "example": 400
                                },
                                "error": {
                                    "required": [
                                        "title",
                                        "detail",
                                        "status",
                                        "timestamp"
                                    ],
                                    "properties": {
                                        "title": {
                                            "type": "string",
                                            "example": "Bad Request"
                                        },
                                        "detail": {
                                            "type": "string",
                                            "example": "Missing required fields"
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 400
                                        },
                                        "timestamp": {
                                            "type": "string",
                                            "format": "date-time",
                                            "example": "2025-07-10T10:00:00Z"
                                        }
                                    },
                                    "type": "object"
                                }
                            },
                            "type": "object"
                        }
                    }
                }
            },
            "401": {
                "description": "Unauthorized",
                "content": {
                    "application/json": {
                        "schema": {
                            "required": [
                                "success",
                                "message",
                                "status",
                                "error"
                            ],
                            "properties": {
                                "success": {
                                    "type": "boolean",
                                    "example": false
                                },
                                "message": {
                                    "type": "string",
                                    "example": "Unauthorized"
                                },
                                "status": {
                                    "type": "integer",
                                    "example": 401
                                },
                                "error": {
                                    "required": [
                                        "title",
                                        "detail",
                                        "status",
                                        "timestamp"
                                    ],
                                    "properties": {
                                        "title": {
                                            "type": "string",
                                            "example": "Unauthorized"
                                        },
                                        "detail": {
                                            "type": "string",
                                            "example": "Authentication failed or token expired"
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 401
                                        },
                                        "timestamp": {
                                            "type": "string",
                                            "format": "date-time",
                                            "example": "2025-07-10T10:00:00Z"
                                        }
                                    },
                                    "type": "object"
                                }
                            },
                            "type": "object"
                        }
                    }
                }
            },
            "422": {
                "description": "Validation Error",
                "content": {
                    "application/json": {
                        "schema": {
                            "required": [
                                "success",
                                "message",
                                "status",
                                "error"
                            ],
                            "properties": {
                                "success": {
                                    "type": "boolean",
                                    "example": false
                                },
                                "message": {
                                    "type": "string",
                                    "example": "The given data was invalid."
                                },
                                "status": {
                                    "type": "integer",
                                    "example": 422
                                },
                                "error": {
                                    "required": [
                                        "title",
                                        "detail",
                                        "status",
                                        "timestamp"
                                    ],
                                    "properties": {
                                        "title": {
                                            "type": "string",
                                            "example": "Validation Failed"
                                        },
                                        "detail": {
                                            "type": "string",
                                            "example": "The email field is required."
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 422
                                        },
                                        "timestamp": {
                                            "type": "string",
                                            "format": "date-time",
                                            "example": "2025-07-10T10:00:00Z"
                                        }
                                    },
                                    "type": "object"
                                }
                            },
                            "type": "object"
                        }
                    }
                }
            },
            "429": {
                "description": "Too Many Requests",
                "content": {
                    "application/json": {
                        "schema": {
                            "required": [
                                "success",
                                "message",
                                "status",
                                "error"
                            ],
                            "properties": {
                                "success": {
                                    "type": "boolean",
                                    "example": false
                                },
                                "message": {
                                    "type": "string",
                                    "example": "Too Many Requests"
                                },
                                "status": {
                                    "type": "integer",
                                    "example": 429
                                },
                                "error": {
                                    "required": [
                                        "title",
                                        "detail",
                                        "status",
                                        "timestamp"
                                    ],
                                    "properties": {
                                        "title": {
                                            "type": "string",
                                            "example": "Too Many Requests"
                                        },
                                        "detail": {
                                            "type": "string",
                                            "example": "You have reached the OTP request limit. Try again later."
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 429
                                        },
                                        "timestamp": {
                                            "type": "string",
                                            "format": "date-time",
                                            "example": "2025-07-10T10:00:00Z"
                                        }
                                    },
                                    "type": "object"
                                }
                            },
                            "type": "object"
                        }
                    }
                }
            }
        },
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "description": "Enter your bearer token in the format **Bearer &lt;token>**",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "About Us",
            "description": "API endpoints for managing about us"
        },
        {
            "name": "Cards",
            "description": "API endpoints for managing user cards"
        },
        {
            "name": "Web",
            "description": "API endpoints for website content"
        },
        {
            "name": "Instruction",
            "description": "API endpoints for transports and instructions"
        },
        {
            "name": "Authentication",
            "description": "Authentication"
        },
        {
            "name": "Contact",
            "description": "Contact"
        }
    ]
}