{
    "openapi": "3.0.0",
    "info": {
        "title": "TAWAZON-APIs Documentation",
        "description": "TAWAZON APIs",
        "version": "1.0.0"
    },
    "servers": [
        {
            "url": "http://127.0.0.1:8001",
            "description": "Local server"
        },
        {
            "url": "https://tawazon.sa",
            "description": "Production server"
        }
    ],
    "paths": {
        "/api": {},
        "/api/avatar": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of avatar",
                "operationId": "a8d5e00bbd457ee0446d8248ccf1c576",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/challenges/challenge-company-employee/{challengeCompanyEmployeeId}": {
            "get": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Get detail challenge company",
                "operationId": "7baeee53940bc6bdff325548c90ccb65",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/api/challenges/my-challenges-company": {
            "get": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Get all challenges company that i created",
                "operationId": "967f5d533339c1cf1b487648a357e178",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/challenges/all-my-challenges-company": {
            "get": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Get all challenges company that im responsible for responding",
                "operationId": "4d7923c9b32aec0a100e62f04695f061",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/challenges/my-challenge-company/{challengeCompanyEmployeeId}": {
            "patch": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Response notification challenge company",
                "operationId": "9ce17514762127b05a473e67217f90bb",
                "requestBody": {
                    "description": "Send response notification challenge company",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "status"
                                ],
                                "properties": {
                                    "status": {
                                        "type": "string",
                                        "example": "Pending, Active, Inactive, Pause, Cancel"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/challenges/create-challenge-company": {
            "post": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Create challenge company by connected user",
                "operationId": "9e4a71ef2194fb78613269bcf24dc511",
                "requestBody": {
                    "description": "create challenge company",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "status"
                                ],
                                "properties": {
                                    "start_date": {
                                        "type": "string",
                                        "example": "2024-07-12 11:37"
                                    },
                                    "end_date": {
                                        "type": "string",
                                        "example": "2024-07-12 11:37"
                                    },
                                    "max_steps": {
                                        "type": "string",
                                        "example": "191919"
                                    },
                                    "type": {
                                        "type": "string",
                                        "example": "Department|Employees"
                                    },
                                    "department_id": {
                                        "type": [],
                                        "example": [
                                            1,
                                            2,
                                            3,
                                            4,
                                            5
                                        ]
                                    },
                                    "user_id": {
                                        "type": [],
                                        "example": [
                                            1,
                                            2,
                                            3,
                                            4,
                                            5
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/challenges/nbr-steps-per-day": {
            "post": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Create number steps per day for user",
                "operationId": "41231da3ea5ac638bdd219cd98b6187e",
                "requestBody": {
                    "description": "create number steps per day for user",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nbr_steps",
                                    "challenge_id",
                                    "user_id"
                                ],
                                "properties": {
                                    "nbr_steps": {
                                        "type": "string",
                                        "example": "99999"
                                    },
                                    "user_id": {
                                        "type": "string",
                                        "example": "19"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/challenges/rating/{challengeId}": {
            "get": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Get rating challenge employees",
                "operationId": "4b3c85c26b608d7f5e232045382dffaa",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/challenges/my-histories/{challengeId}": {
            "get": {
                "tags": [
                    "Challenge Companies"
                ],
                "summary": "Get my histories challenge",
                "operationId": "9e5194639e9a9863862fd5f9b3dc48a3",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/companies": {
            "get": {
                "tags": [
                    "Companies"
                ],
                "summary": "get all companies",
                "operationId": "efabc710a396fad56317f5498e8699b0",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/api/content/{type_content}": {
            "get": {
                "tags": [
                    "Content"
                ],
                "summary": "get Content By type",
                "operationId": "99f66e81167e074108af882e93a5fccd",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/api/departments/company/{id}": {
            "get": {
                "tags": [
                    "Departments"
                ],
                "summary": "get list departments by company",
                "operationId": "c385b9987591ff9229dcde3ce60a4119",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/api/employees/company/{id}": {
            "get": {
                "tags": [
                    "Employees"
                ],
                "summary": "get list employees by company",
                "operationId": "559eb577091238fd17c938c83682235c",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                }
            }
        },
        "/api/get/list-article/{type_article}": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of Article",
                "operationId": "a9578eb26b4becce4d033ea6b0ae2419",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/home-article/{type_article}": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of Article",
                "operationId": "ce99e0cf5aeba3c7ea5d52aaecbb205b",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/category-event": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of CategoryEvent",
                "operationId": "92182c99bd82ce80aa2901ace3e94ad9",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/Last-article/{type_article}": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "Last of Article",
                "operationId": "efa1e4ef1bcfbc6f9e1124554793959f",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/article/{id}": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of Article",
                "operationId": "d1c95da1ee4e845ce6f41f2214697ce0",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/login": {
            "post": {
                "tags": [
                    "Authentication"
                ],
                "summary": "Log in a user",
                "operationId": "73634aed6a3ba39d84839f9022401daf",
                "requestBody": {
                    "description": "Pass user credentials",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "username",
                                    "password"
                                ],
                                "properties": {
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "pass1234"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful login",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "token": {
                                            "type": "string",
                                            "example": "1|xxxxxxxxx"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid credentials"
                    }
                }
            }
        },
        "/api/get/list-newsletter": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of Article",
                "operationId": "8ce6bff3b26eba65ee9dad3ff46aabf3",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/home-newsletter": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of newsletters",
                "operationId": "39eac2792055970a8dbe4722ee4bdda4",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/get/newsletter/{id}": {
            "get": {
                "tags": [
                    "Avatar"
                ],
                "summary": "List of Newsletter",
                "operationId": "d192257fcd098b52c163809bc30478a8",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/category-quiz": {
            "get": {
                "tags": [
                    "Quis"
                ],
                "summary": "List of Category Quiz ",
                "operationId": "a2f220970dab7a1d22faeaa5e1c89117",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/first/sector": {
            "get": {
                "tags": [
                    "Sector"
                ],
                "summary": "Get first sector ",
                "operationId": "b2960675c2afbb22e433817e2d75fa9d",
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/gallery/sector/{sector}": {
            "get": {
                "tags": [
                    "Sector"
                ],
                "summary": "Get sector ",
                "operationId": "7fcb9e493da8add8ee7acd6de3cf8d0a",
                "parameters": [
                    {
                        "name": "locale",
                        "in": "query",
                        "description": "Language locale",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "en",
                                "ar"
                            ]
                        }
                    },
                    {
                        "name": "sector",
                        "in": "path",
                        "description": "Get sector by id",
                        "required": true,
                        "example": 1
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/save/sector": {
            "post": {
                "tags": [
                    "Sector"
                ],
                "summary": "Save sector ",
                "operationId": "17ba3264847dfae70a37b01dcf0ad53c",
                "requestBody": {
                    "description": "Save sector",
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "parent_sector_id",
                                    "sector_id",
                                    "gallery_ids"
                                ],
                                "properties": {
                                    "parent_sector_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "sector_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "gallery_ids": {
                                        "type": [],
                                        "example": [
                                            1,
                                            2,
                                            3
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success"
                    },
                    "400": {
                        "description": "Bad Request"
                    },
                    "422": {
                        "description": "Validation failed"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        }
    },
    "components": {
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "name": "Authorization",
                "in": "header",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "Avatar",
            "description": "Avatar"
        },
        {
            "name": "Challenge Companies",
            "description": "Challenge Companies"
        },
        {
            "name": "Companies",
            "description": "Companies"
        },
        {
            "name": "Content",
            "description": "Content"
        },
        {
            "name": "Departments",
            "description": "Departments"
        },
        {
            "name": "Employees",
            "description": "Employees"
        },
        {
            "name": "Authentication",
            "description": "Authentication"
        },
        {
            "name": "Quis",
            "description": "Quis"
        },
        {
            "name": "Sector",
            "description": "Sector"
        }
    ]
}