{
    "openapi": "3.0.3",
    "info": {
        "title": "Madrasa Abou Bakr API",
        "version": "1.0.0",
        "description": "Backend interface for the official Madrasa Abou Bakr website, mobile apps, and plugins. This OpenAPI document is auto-generated from route definitions."
    },
    "servers": [
        {
            "url": "https://api.madrasa-aboubakr.com",
            "description": "Current environment"
        }
    ],
    "paths": {
        "/api/v1/admin/admins": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Index",
                "operationId": "get_api_v1_admin_admins_index",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Admin"
                ],
                "summary": "Store",
                "operationId": "post_api_v1_admin_admins_store",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/admins/{admin}": {
            "patch": {
                "tags": [
                    "Admin"
                ],
                "summary": "Update",
                "operationId": "patch_api_v1_admin_admins_admin_update",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "parameters": [
                    {
                        "name": "admin",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/login": {
            "post": {
                "tags": [
                    "Admin"
                ],
                "summary": "Login",
                "operationId": "post_api_v1_admin_login_login",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/admin/logout": {
            "post": {
                "tags": [
                    "Admin"
                ],
                "summary": "Logout",
                "operationId": "post_api_v1_admin_logout_logout",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/me": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Me",
                "operationId": "get_api_v1_admin_me_me",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Index",
                "operationId": "get_api_v1_admin_requests_index",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests/accepted": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Index",
                "operationId": "get_api_v1_admin_requests_accepted_index",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests/{enrollmentRequest}": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Show",
                "operationId": "get_api_v1_admin_requests_enrollmentRequest_show",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "parameters": [
                    {
                        "name": "enrollmentRequest",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Admin"
                ],
                "summary": "Destroy",
                "operationId": "delete_api_v1_admin_requests_enrollmentRequest_destroy",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "parameters": [
                    {
                        "name": "enrollmentRequest",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests/{enrollmentRequest}/archive": {
            "post": {
                "tags": [
                    "Admin"
                ],
                "summary": "Archive",
                "operationId": "post_api_v1_admin_requests_enrollmentRequest_archive_archive",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "parameters": [
                    {
                        "name": "enrollmentRequest",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests/{enrollmentRequest}/payment": {
            "patch": {
                "tags": [
                    "Admin"
                ],
                "summary": "Update Payment",
                "operationId": "patch_api_v1_admin_requests_enrollmentRequest_payment_updatePayment",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "parameters": [
                    {
                        "name": "enrollmentRequest",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/requests/{enrollmentRequest}/status": {
            "patch": {
                "tags": [
                    "Admin"
                ],
                "summary": "Update Status",
                "operationId": "patch_api_v1_admin_requests_enrollmentRequest_status_updateStatus",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "parameters": [
                    {
                        "name": "enrollmentRequest",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/rules": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Index",
                "operationId": "get_api_v1_admin_rules_index",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Admin"
                ],
                "summary": "Upsert",
                "operationId": "put_api_v1_admin_rules_upsert",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/admin/settings": {
            "get": {
                "tags": [
                    "Admin"
                ],
                "summary": "Index",
                "operationId": "get_api_v1_admin_settings_index",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Admin"
                ],
                "summary": "Upsert",
                "operationId": "put_api_v1_admin_settings_upsert",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                },
                "security": [
                    {
                        "cookieAuth": []
                    }
                ]
            }
        },
        "/api/v1/requests": {
            "post": {
                "tags": [
                    "Public"
                ],
                "summary": "Store",
                "operationId": "post_api_v1_requests_store",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/requests/status": {
            "get": {
                "tags": [
                    "Public"
                ],
                "summary": "Show",
                "operationId": "get_api_v1_requests_status_show",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                }
            }
        },
        "/api/v1/requests/status/cancel": {
            "post": {
                "tags": [
                    "Public"
                ],
                "summary": "Cancel",
                "operationId": "post_api_v1_requests_status_cancel_cancel",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    },
                    "201": {
                        "description": "Created"
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "additionalProperties": true
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/rules/public": {
            "get": {
                "tags": [
                    "Public"
                ],
                "summary": "Rules",
                "operationId": "get_api_v1_rules_public_rules",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                }
            }
        },
        "/api/v1/settings/public": {
            "get": {
                "tags": [
                    "Public"
                ],
                "summary": "Settings",
                "operationId": "get_api_v1_settings_public_settings",
                "responses": {
                    "200": {
                        "description": "Successful response"
                    }
                }
            }
        }
    },
    "components": {
        "securitySchemes": {
            "cookieAuth": {
                "type": "apiKey",
                "in": "cookie",
                "name": "madrasa-abou-bakr-session"
            }
        }
    }
}