| {
    "openapi": "3.0.0",
    "info": {
        "title": "Basic CRUD Laravel API Documentation",
        "description": "API Documentation - Basic CRUD Laravel",
        "contact": {
            "email": "manirujjamanakash@gmail.com"
        },
        "license": {
            "name": "GPL2",
            "url": "https://devsenv.com"
        },
        "version": "1.0.0"
    },
    "paths": {
        "/api/auth/login": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Login",
                "description": "Login",
                "operationId": "535ffeda4b78916efd658b2844ea897a",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "type": "string",
                                        "example": "admin@example.com"
                                    },
                                    "password": {
                                        "type": "string",
                                        "example": "123456"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Login"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                }
            }
        },
        "/api/auth/register": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Register User",
                "description": "Register New User",
                "operationId": "da8643013c2941f5ed7f8a9c9b4a7f7a",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "example": "Jhon Doe"
                                    },
                                    "email": {
                                        "type": "string",
                                        "example": "jhondoe@example.com"
                                    },
                                    "password": {
                                        "type": "string",
                                        "example": "123456"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "example": "123456"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Register New User Data"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                }
            }
        },
        "/api/auth/me": {
            "get": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Authenticated User Profile",
                "description": "Authenticated User Profile",
                "operationId": "1537d2a532022d0974e4cd2d83c6a38f",
                "responses": {
                    "200": {
                        "description": "Authenticated User Profile"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            }
        },
        "/api/auth/logout": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Logout",
                "description": "Logout",
                "operationId": "46f8a14c8083abb69eed72768aa08629",
                "responses": {
                    "200": {
                        "description": "Logout"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                }
            }
        },
        "/api/auth/refresh": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Refresh",
                "description": "Refresh",
                "operationId": "f3538b6e9c46bcf601a9d194288b03d4",
                "responses": {
                    "200": {
                        "description": "Refresh"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            }
        },
        "/api/products": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Get Product List",
                "description": "Get Product List as Array",
                "operationId": "index",
                "responses": {
                    "200": {
                        "description": "Get Product List as Array"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Products"
                ],
                "summary": "Create New Product",
                "description": "Create New Product",
                "operationId": "store",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "title": {
                                        "type": "string",
                                        "example": "Product 1"
                                    },
                                    "description": {
                                        "type": "string",
                                        "example": "Description"
                                    },
                                    "price": {
                                        "type": "integer",
                                        "example": 10120
                                    },
                                    "image": {
                                        "type": "string",
                                        "example": ""
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Create New Product"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            }
        },
        "/api/products/view/all": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "All Products - Publicly Accessible",
                "description": "All Products - Publicly Accessible",
                "operationId": "indexAll",
                "parameters": [
                    {
                        "name": "perPage",
                        "in": "query",
                        "description": "perPage, eg; 20",
                        "schema": {
                            "type": "integer"
                        },
                        "example": 20
                    }
                ],
                "responses": {
                    "200": {
                        "description": "All Products - Publicly Accessible"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                }
            }
        },
        "/api/products/view/search": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "All Products - Publicly Accessible",
                "description": "All Products - Publicly Accessible",
                "operationId": "search",
                "parameters": [
                    {
                        "name": "perPage",
                        "in": "query",
                        "description": "perPage, eg; 20",
                        "schema": {
                            "type": "integer"
                        },
                        "example": 20
                    },
                    {
                        "name": "search",
                        "in": "query",
                        "description": "search, eg; Test",
                        "schema": {
                            "type": "string"
                        },
                        "example": "Test"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "All Products - Publicly Accessible"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                }
            }
        },
        "/api/products/{id}": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Show Product Details",
                "description": "Show Product Details",
                "operationId": "show",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "id, eg; 1",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Show Product Details"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Products"
                ],
                "summary": "Update Product",
                "description": "Update Product",
                "operationId": "update",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "id, eg; 1",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "title": {
                                        "type": "string",
                                        "example": "Product 1"
                                    },
                                    "description": {
                                        "type": "string",
                                        "example": "Description"
                                    },
                                    "price": {
                                        "type": "integer",
                                        "example": 10120
                                    },
                                    "image": {
                                        "type": "string",
                                        "example": ""
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Update Product"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Products"
                ],
                "summary": "Delete Product",
                "description": "Delete Product",
                "operationId": "destroy",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "id, eg; 1",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Delete Product"
                    },
                    "400": {
                        "description": "Bad request"
                    },
                    "404": {
                        "description": "Resource Not Found"
                    }
                },
                "security": [
                    {
                        "bearer": []
                    }
                ]
            }
        }
    },
    "components": {
        "securitySchemes": {
            "bearer": {
                "type": "apiKey",
                "description": "Bearer token, Ex: Bearer <token>",
                "name": "Authorization",
                "in": "header",
                "bearerFormat": "JWT"
            }
        }
    },
    "security": [
        {
            "bearer": {
                "type": "apiKey",
                "description": "Bearer token, Ex: Bearer <token>",
                "name": "Authorization",
                "in": "header",
                "scheme": "bearer"
            }
        }
    ]
}
 |