{
    "status": "success",
    "message": "Welcome to the API",
    "swagger_ui": "/swagger",
    "api_endpoints": {
        "auth": {
            "register": {
                "method": "POST",
                "path": "/api/auth/register",
                "description": "\uc0c8 \uc0ac\uc6a9\uc790 \uacc4\uc815\uc744 \ub4f1\ub85d\ud569\ub2c8\ub2e4."
            },
            "login": {
                "method": "POST",
                "path": "/api/auth/login",
                "description": "\uc0ac\uc6a9\uc790 \ub85c\uadf8\uc778 \ubc0f \uc561\uc138\uc2a4 \ud1a0\ud070 \ubc1c\uae09"
            },
            "refresh": {
                "method": "POST",
                "path": "/api/auth/refresh",
                "description": "\uc561\uc138\uc2a4 \ud1a0\ud070 \uac31\uc2e0"
            },
            "logout": {
                "method": "POST",
                "path": "/api/auth/logout",
                "description": "\ud604\uc7ac \uc138\uc158\uc5d0\uc11c \ub85c\uadf8\uc544\uc6c3"
            },
            "forgot_password": {
                "method": "POST",
                "path": "/api/auth/forgot-password",
                "description": "\ube44\ubc00\ubc88\ud638 \uc7ac\uc124\uc815 \ub9c1\ud06c \uc694\uccad"
            },
            "reset_password": {
                "method": "POST",
                "path": "/api/auth/reset-password",
                "description": "\uc0c8 \ube44\ubc00\ubc88\ud638 \uc124\uc815"
            }
        },
        "user": {
            "get_user": {
                "method": "GET",
                "path": "/api/user",
                "description": "\ud604\uc7ac \ub85c\uadf8\uc778\ud55c \uc0ac\uc6a9\uc790 \uc815\ubcf4 \uc870\ud68c"
            },
            "update_user": {
                "method": "PUT",
                "path": "/api/user",
                "description": "\uc0ac\uc6a9\uc790 \uc815\ubcf4 \uc5c5\ub370\uc774\ud2b8"
            },
            "change_password": {
                "method": "POST",
                "path": "/api/user/password",
                "description": "\uc0ac\uc6a9\uc790 \ube44\ubc00\ubc88\ud638 \ubcc0\uacbd"
            },
            "upload_profile_image": {
                "method": "POST",
                "path": "/api/user/profile/image",
                "description": "\ud504\ub85c\ud544 \uc774\ubbf8\uc9c0 \uc5c5\ub85c\ub4dc"
            },
            "delete_session": {
                "method": "DELETE",
                "path": "/api/user/sessions/{id}",
                "description": "\ud2b9\uc815 \uc138\uc158 \uc885\ub8cc"
            },
            "get_favorite_products": {
                "method": "GET",
                "path": "/api/user/favorites/products",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uad00\uc2ec \uc0c1\ud488 \ubaa9\ub85d \uc870\ud68c"
            },
            "add_favorite_product": {
                "method": "POST",
                "path": "/api/user/favorites/products/{id}",
                "description": "\uc0c1\ud488\uc744 \uad00\uc2ec \ubaa9\ub85d\uc5d0 \ucd94\uac00"
            },
            "remove_favorite_product": {
                "method": "DELETE",
                "path": "/api/user/favorites/products/{id}",
                "description": "\uc0c1\ud488\uc744 \uad00\uc2ec \ubaa9\ub85d\uc5d0\uc11c \uc81c\uac70"
            },
            "get_favorite_providers": {
                "method": "GET",
                "path": "/api/user/favorites/providers",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uad00\uc2ec \uc81c\uacf5\uc790 \ubaa9\ub85d \uc870\ud68c"
            },
            "add_favorite_provider": {
                "method": "POST",
                "path": "/api/user/favorites/providers/{id}",
                "description": "\uc81c\uacf5\uc790\ub97c \uad00\uc2ec \ubaa9\ub85d\uc5d0 \ucd94\uac00"
            },
            "remove_favorite_provider": {
                "method": "DELETE",
                "path": "/api/user/favorites/providers/{id}",
                "description": "\uc81c\uacf5\uc790\ub97c \uad00\uc2ec \ubaa9\ub85d\uc5d0\uc11c \uc81c\uac70"
            },
            "get_orders": {
                "method": "GET",
                "path": "/api/user/orders",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uc8fc\ubb38/\uad6c\ub9e4 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_order": {
                "method": "GET",
                "path": "/api/user/orders/{id}",
                "description": "\uc8fc\ubb38 \uc0c1\uc138 \uc815\ubcf4 \uc870\ud68c"
            },
            "confirm_order": {
                "method": "POST",
                "path": "/api/user/orders/{id}/confirm",
                "description": "\uc8fc\ubb38 \uad6c\ub9e4 \ud655\uc815"
            },
            "cancel_order": {
                "method": "POST",
                "path": "/api/user/orders/{id}/cancel",
                "description": "\uc8fc\ubb38 \ucde8\uc18c"
            },
            "get_rentals": {
                "method": "GET",
                "path": "/api/user/rentals",
                "description": "\uc0ac\uc6a9\uc790\uc758 \ub80c\ud0c8 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_rental": {
                "method": "GET",
                "path": "/api/user/rentals/{id}",
                "description": "\ub80c\ud0c8 \uc0c1\uc138 \uc815\ubcf4 \uc870\ud68c"
            },
            "cancel_rental": {
                "method": "POST",
                "path": "/api/user/rentals/{id}/cancel",
                "description": "\ub80c\ud0c8 \ucde8\uc18c"
            },
            "get_subscriptions": {
                "method": "GET",
                "path": "/api/user/subscriptions",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uad6c\ub3c5 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_subscription": {
                "method": "GET",
                "path": "/api/user/subscriptions/{id}",
                "description": "\uad6c\ub3c5 \uc0c1\uc138 \uc815\ubcf4 \uc870\ud68c"
            },
            "cancel_subscription": {
                "method": "POST",
                "path": "/api/user/subscriptions/{id}/cancel",
                "description": "\uad6c\ub3c5 \ucde8\uc18c"
            },
            "reviews": {
                "method": "POST",
                "path": "/api/user/reviews/products/{id}",
                "description": "\uc0c1\ud488 \ub9ac\ubdf0 \ub4f1\ub85d"
            },
            "update_review": {
                "method": "PUT",
                "path": "/api/user/reviews/products/{review_id}",
                "description": "\uc0c1\ud488 \ub9ac\ubdf0 \uc218\uc815"
            },
            "delete_review": {
                "method": "DELETE",
                "path": "/api/user/reviews/products/{review_id}",
                "description": "\uc0c1\ud488 \ub9ac\ubdf0 \uc0ad\uc81c"
            },
            "get_user_reviews": {
                "method": "GET",
                "path": "/api/user/reviews/products",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uc0c1\ud488 \ub9ac\ubdf0 \ubaa9\ub85d \uc870\ud68c"
            },
            "create_provider_review": {
                "method": "POST",
                "path": "/api/user/reviews/providers/{id}",
                "description": "\uc81c\uacf5\uc790 \ub9ac\ubdf0 \ub4f1\ub85d"
            },
            "update_provider_review": {
                "method": "PUT",
                "path": "/api/user/reviews/providers/{review_id}",
                "description": "\uc81c\uacf5\uc790 \ub9ac\ubdf0 \uc218\uc815"
            },
            "delete_provider_review": {
                "method": "DELETE",
                "path": "/api/user/reviews/providers/{review_id}",
                "description": "\uc81c\uacf5\uc790 \ub9ac\ubdf0 \uc0ad\uc81c"
            },
            "get_user_provider_reviews": {
                "method": "GET",
                "path": "/api/user/reviews/providers",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uc81c\uacf5\uc790 \ub9ac\ubdf0 \ubaa9\ub85d \uc870\ud68c"
            },
            "questions": {
                "method": "POST",
                "path": "/api/user/questions/products/{id}",
                "description": "\uc0c1\ud488 \uc9c8\ubb38 \ub4f1\ub85d"
            },
            "update_question": {
                "method": "PUT",
                "path": "/api/user/questions/{question_id}",
                "description": "\uc0c1\ud488 \uc9c8\ubb38 \uc218\uc815"
            },
            "delete_question": {
                "method": "DELETE",
                "path": "/api/user/questions/{question_id}",
                "description": "\uc0c1\ud488 \uc9c8\ubb38 \uc0ad\uc81c"
            },
            "get_user_questions": {
                "method": "GET",
                "path": "/api/user/questions",
                "description": "\uc0ac\uc6a9\uc790\uc758 \uc0c1\ud488 \uc9c8\ubb38 \ubaa9\ub85d \uc870\ud68c"
            }
        },
        "provider": {
            "dashboard": {
                "method": "GET",
                "path": "/api/provider/dashboard",
                "description": "\uc11c\ube44\uc2a4 \uc81c\uacf5\uc790 \ub300\uc2dc\ubcf4\ub4dc \uc815\ubcf4 \uc870\ud68c"
            },
            "get_services": {
                "method": "GET",
                "path": "/api/provider/services",
                "description": "\uc11c\ube44\uc2a4 \uc81c\uacf5\uc790\uc758 \ubaa8\ub4e0 \uc11c\ube44\uc2a4 \uc870\ud68c"
            },
            "create_service": {
                "method": "POST",
                "path": "/api/provider/services",
                "description": "\uc0c8 \uc11c\ube44\uc2a4 \ub4f1\ub85d"
            },
            "get_service": {
                "method": "GET",
                "path": "/api/provider/services/{id}",
                "description": "\ud2b9\uc815 \uc11c\ube44\uc2a4 \uc0c1\uc138 \uc815\ubcf4 \uc870\ud68c"
            },
            "update_service": {
                "method": "PUT",
                "path": "/api/provider/services/{id}",
                "description": "\uc11c\ube44\uc2a4 \uc815\ubcf4 \uc5c5\ub370\uc774\ud2b8"
            },
            "delete_service": {
                "method": "DELETE",
                "path": "/api/provider/services/{id}",
                "description": "\uc11c\ube44\uc2a4 \uc0ad\uc81c"
            },
            "get_bookings": {
                "method": "GET",
                "path": "/api/provider/bookings",
                "description": "\uc11c\ube44\uc2a4 \uc81c\uacf5\uc790\uc758 \ubaa8\ub4e0 \uc608\uc57d \uc870\ud68c"
            },
            "update_booking_status": {
                "method": "PUT",
                "path": "/api/provider/bookings/{id}/status",
                "description": "\uc608\uc57d \uc0c1\ud0dc \uc5c5\ub370\uc774\ud2b8"
            }
        },
        "products": {
            "get_products": {
                "method": "GET",
                "path": "/api/products",
                "description": "\uc81c\ud488 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_product_by_slug": {
                "method": "GET",
                "path": "/api/products/slug/{slug}",
                "description": "\uc2ac\ub7ec\uadf8\ub85c \uc81c\ud488 \uc0c1\uc138 \uc870\ud68c"
            },
            "get_product": {
                "method": "GET",
                "path": "/api/products/{id}",
                "description": "\uc81c\ud488 \uc0c1\uc138 \uc870\ud68c"
            },
            "get_categories": {
                "method": "GET",
                "path": "/api/categories",
                "description": "\uce74\ud14c\uace0\ub9ac \ubaa9\ub85d \uc870\ud68c"
            },
            "get_category": {
                "method": "GET",
                "path": "/api/categories/{id}",
                "description": "\uce74\ud14c\uace0\ub9ac \uc0c1\uc138 \uc870\ud68c"
            }
        },
        "provider_products": {
            "create_product": {
                "method": "POST",
                "path": "/api/provider/products",
                "description": "\uc81c\ud488 \uc0dd\uc131(\ud310\ub9e4\uc790\uc6a9)"
            },
            "update_product": {
                "method": "PUT",
                "path": "/api/provider/products/{id}",
                "description": "\uc81c\ud488 \uc218\uc815(\ud310\ub9e4\uc790\uc6a9)"
            },
            "delete_product": {
                "method": "DELETE",
                "path": "/api/provider/products/{id}",
                "description": "\uc81c\ud488 \uc0ad\uc81c(\ud310\ub9e4\uc790\uc6a9)"
            },
            "upload_product_image": {
                "method": "POST",
                "path": "/api/provider/products/{id}/images",
                "description": "\uc81c\ud488 \uc774\ubbf8\uc9c0 \uc5c5\ub85c\ub4dc(\ud310\ub9e4\uc790\uc6a9)"
            }
        },
        "admin": {
            "admin_login": {
                "method": "POST",
                "path": "/api/admin/login",
                "description": "\uad00\ub9ac\uc790 \ub85c\uadf8\uc778"
            },
            "get_admin_list": {
                "method": "GET",
                "path": "/api/admin/list",
                "description": "\ubaa8\ub4e0 \uad00\ub9ac\uc790 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_admin": {
                "method": "GET",
                "path": "/api/admin/{id}",
                "description": "\ud2b9\uc815 \uad00\ub9ac\uc790 \uc815\ubcf4 \uc870\ud68c"
            },
            "create_admin": {
                "method": "POST",
                "path": "/api/admin",
                "description": "\uc0c8 \uad00\ub9ac\uc790 \uacc4\uc815 \uc0dd\uc131"
            },
            "update_admin": {
                "method": "PUT",
                "path": "/api/admin/{id}",
                "description": "\uad00\ub9ac\uc790 \uc815\ubcf4 \uc5c5\ub370\uc774\ud2b8"
            },
            "get_pending_products": {
                "method": "GET",
                "path": "/api/admin/products/pending",
                "description": "\uc2b9\uc778 \ub300\uae30 \uc911\uc778 \uc81c\ud488 \ubaa9\ub85d \uc870\ud68c"
            },
            "approve_product": {
                "method": "PUT",
                "path": "/api/admin/products/{id}/approve",
                "description": "\uc81c\ud488 \uc2b9\uc778"
            },
            "reject_product": {
                "method": "PUT",
                "path": "/api/admin/products/{id}/reject",
                "description": "\uc81c\ud488 \uac70\ubd80"
            },
            "get_admin_notices": {
                "method": "GET",
                "path": "/api/admin/notices",
                "description": "\ubaa8\ub4e0 \uacf5\uc9c0\uc0ac\ud56d \ubaa9\ub85d \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "get_admin_notice": {
                "method": "GET",
                "path": "/api/admin/notices/{id}",
                "description": "\ud2b9\uc815 \uacf5\uc9c0\uc0ac\ud56d \uc0c1\uc138 \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "create_notice": {
                "method": "POST",
                "path": "/api/admin/notices",
                "description": "\uc0c8 \uacf5\uc9c0\uc0ac\ud56d \uc0dd\uc131"
            },
            "update_notice": {
                "method": "PUT",
                "path": "/api/admin/notices/{id}",
                "description": "\uacf5\uc9c0\uc0ac\ud56d \uc218\uc815"
            },
            "delete_notice": {
                "method": "DELETE",
                "path": "/api/admin/notices/{id}",
                "description": "\uacf5\uc9c0\uc0ac\ud56d \uc0ad\uc81c"
            },
            "get_admin_events": {
                "method": "GET",
                "path": "/api/admin/events",
                "description": "\ubaa8\ub4e0 \uc774\ubca4\ud2b8 \ubaa9\ub85d \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "get_admin_event": {
                "method": "GET",
                "path": "/api/admin/events/{id}",
                "description": "\ud2b9\uc815 \uc774\ubca4\ud2b8 \uc0c1\uc138 \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "create_event": {
                "method": "POST",
                "path": "/api/admin/events",
                "description": "\uc0c8 \uc774\ubca4\ud2b8 \uc0dd\uc131"
            },
            "update_event": {
                "method": "PUT",
                "path": "/api/admin/events/{id}",
                "description": "\uc774\ubca4\ud2b8 \uc218\uc815"
            },
            "delete_event": {
                "method": "DELETE",
                "path": "/api/admin/events/{id}",
                "description": "\uc774\ubca4\ud2b8 \uc0ad\uc81c"
            },
            "get_admin_faqs": {
                "method": "GET",
                "path": "/api/admin/faqs",
                "description": "\ubaa8\ub4e0 FAQ \ubaa9\ub85d \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "get_admin_faq": {
                "method": "GET",
                "path": "/api/admin/faqs/{id}",
                "description": "\ud2b9\uc815 FAQ \uc0c1\uc138 \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "create_faq": {
                "method": "POST",
                "path": "/api/admin/faqs",
                "description": "\uc0c8 FAQ \uc0dd\uc131"
            },
            "update_faq": {
                "method": "PUT",
                "path": "/api/admin/faqs/{id}",
                "description": "FAQ \uc218\uc815"
            },
            "delete_faq": {
                "method": "DELETE",
                "path": "/api/admin/faqs/{id}",
                "description": "FAQ \uc0ad\uc81c"
            },
            "get_admin_hashtags": {
                "method": "GET",
                "path": "/api/admin/hashtags",
                "description": "\ubaa8\ub4e0 \ud574\uc2dc\ud0dc\uadf8 \ubaa9\ub85d \uc870\ud68c(\uad00\ub9ac\uc790)"
            },
            "create_hashtag": {
                "method": "POST",
                "path": "/api/admin/hashtags",
                "description": "\uc0c8 \ud574\uc2dc\ud0dc\uadf8 \uc0dd\uc131"
            },
            "update_hashtag": {
                "method": "PUT",
                "path": "/api/admin/hashtags/{id}",
                "description": "\ud574\uc2dc\ud0dc\uadf8 \uc218\uc815"
            },
            "delete_hashtag": {
                "method": "DELETE",
                "path": "/api/admin/hashtags/{id}",
                "description": "\ud574\uc2dc\ud0dc\uadf8 \uc0ad\uc81c"
            },
            "set_category_hashtags": {
                "method": "POST",
                "path": "/api/admin/categories/{id}/hashtags",
                "description": "\uce74\ud14c\uace0\ub9ac\uc5d0 \ud574\uc2dc\ud0dc\uadf8 \uc5f0\uacb0 \uc124\uc815"
            }
        },
        "docs": {
            "swagger": {
                "method": "GET",
                "path": "/swagger",
                "description": "Swagger UI API \ubb38\uc11c"
            },
            "api_docs": {
                "method": "GET",
                "path": "/api-docs",
                "description": "API \uc5d4\ub4dc\ud3ec\uc778\ud2b8 \ubaa9\ub85d \ud398\uc774\uc9c0"
            }
        },
        "notices": {
            "get_notices": {
                "method": "GET",
                "path": "/api/notices",
                "description": "\uacf5\uc9c0\uc0ac\ud56d \ubaa9\ub85d \uc870\ud68c"
            },
            "get_notice": {
                "method": "GET",
                "path": "/api/notices/{id}",
                "description": "\uacf5\uc9c0\uc0ac\ud56d \uc0c1\uc138 \uc870\ud68c"
            }
        },
        "events": {
            "get_events": {
                "method": "GET",
                "path": "/api/events",
                "description": "\uc774\ubca4\ud2b8 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_event": {
                "method": "GET",
                "path": "/api/events/{id}",
                "description": "\uc774\ubca4\ud2b8 \uc0c1\uc138 \uc870\ud68c"
            }
        },
        "faqs": {
            "get_faqs": {
                "method": "GET",
                "path": "/api/faqs",
                "description": "FAQ \ubaa9\ub85d \uc870\ud68c"
            },
            "get_faq": {
                "method": "GET",
                "path": "/api/faqs/{id}",
                "description": "FAQ \uc0c1\uc138 \uc870\ud68c"
            }
        },
        "qna": {
            "get_product_questions": {
                "method": "GET",
                "path": "/api/products/{id}/questions",
                "description": "\uc81c\ud488\uc5d0 \ub300\ud55c \uc9c8\ubb38 \ubaa9\ub85d \uc870\ud68c"
            }
        },
        "hashtags": {
            "get_hashtags": {
                "method": "GET",
                "path": "/api/hashtags",
                "description": "\ubaa8\ub4e0 \ud574\uc2dc\ud0dc\uadf8 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_popular_hashtags": {
                "method": "GET",
                "path": "/api/hashtags/popular",
                "description": "\uc778\uae30 \ud574\uc2dc\ud0dc\uadf8 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_category_hashtags": {
                "method": "GET",
                "path": "/api/categories/{id}/hashtags",
                "description": "\ud2b9\uc815 \uce74\ud14c\uace0\ub9ac\uc758 \ud574\uc2dc\ud0dc\uadf8 \ubaa9\ub85d \uc870\ud68c"
            },
            "get_product_hashtags": {
                "method": "GET",
                "path": "/api/products/{id}/hashtags",
                "description": "\ud2b9\uc815 \uc0c1\ud488\uc758 \ud574\uc2dc\ud0dc\uadf8 \ubaa9\ub85d \uc870\ud68c"
            }
        }
    }
}