{
    "openapi": "3.0.0",
    "info": {
        "title": "Pasuruan Gov API Documentation",
        "description": "API documentation for Pasuruan Government Portal",
        "contact": {
            "email": "admin@pasuruankab.go.id"
        },
        "version": "1.1.0"
    },
    "servers": [
        {
            "url": "http://127.0.0.1:8000/api",
            "description": "Local Development Server"
        },
        {
            "url": "https://www.pasuruankab.go.id/api",
            "description": "Production Server"
        }
    ],
    "paths": {
        "/berita": {
            "get": {
                "tags": [
                    "Berita"
                ],
                "summary": "Get latest news with pagination",
                "operationId": "c8bd9833b8f7aac208368626904736f7",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Page number",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "News not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/berita/{slug}": {
            "get": {
                "tags": [
                    "Berita"
                ],
                "summary": "Get news by slug",
                "operationId": "46bf9219fa6d9d7dbb11a91556a5db0d",
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "description": "News Slug",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "News not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/berita/kategori/{slugCategory}": {
            "get": {
                "tags": [
                    "Berita"
                ],
                "summary": "Get news by category slug with pagination",
                "operationId": "855913010af0226a8d6e5873cb6a7e03",
                "parameters": [
                    {
                        "name": "slugCategory",
                        "in": "path",
                        "description": "Kategori Slug (Contoh: olahraga, politik, nasionalisme, ekonomi,kesehatan,pemerintahan,budaya,pelayanan-publik,pariwisata,pendidikan,kepegawaian,agrowisata,umum)",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Page number",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "News not found for this category"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/berita/kategori": {
            "get": {
                "tags": [
                    "Berita"
                ],
                "summary": "Get all news categories",
                "operationId": "72885a2377f362c089f53d2adaede4f3",
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "Categories not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/event": {
            "get": {
                "tags": [
                    "Event"
                ],
                "summary": "Get latest event with pagination",
                "operationId": "29d5a80be1d5eaa738f9812cf843910a",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Page number",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "Event not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/fasilitas": {
            "get": {
                "tags": [
                    "Fasilitas"
                ],
                "summary": "Get fasilitas data by kategori",
                "operationId": "7462b2dec21791b1f635e7a268e8a45d",
                "parameters": [
                    {
                        "name": "kategori",
                        "in": "query",
                        "description": "Kategori Slug (Contoh: ketenagakerjaan,kesehatan,pasar-daerah,pdam,pendidikan,perhubungan,perpustakaan,transmigrasi)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "Data not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/potensi": {
            "get": {
                "tags": [
                    "Potensi"
                ],
                "summary": "Get potensi data by kategori",
                "operationId": "f2484142051890ebbd96d61d1efb4020",
                "parameters": [
                    {
                        "name": "kategori",
                        "in": "query",
                        "description": "Kategori Slug (Contoh: pariwisata,industri,kependudukan,kesehatan,koperasi,perikanan,pertanian-dan-ketahanan-pangan,pertanian,peternakan,prestasi,transmigrasi)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation"
                    },
                    "401": {
                        "description": "Unauthorized"
                    },
                    "404": {
                        "description": "Data not found"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "description": "Enter the professional API Token (stored in ENV: INTERNAL_API_TOKEN)",
                "name": "BearerAuth",
                "in": "header",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "Berita",
            "description": "Berita"
        },
        {
            "name": "Event",
            "description": "Event"
        },
        {
            "name": "Fasilitas",
            "description": "Fasilitas"
        },
        {
            "name": "Potensi",
            "description": "Potensi"
        }
    ]
}