{"openapi":"3.0.1","info":{"title":"Area Service API","description":"API for Area, City, and State management","version":"1.0.0"},"servers":[{"url":"/","description":"API Gateway"}],"tags":[{"name":"Geography Management","description":"Operations related to geographical location lookup by pincode"},{"name":"Area Management","description":"Operations related to area management"},{"name":"City Management","description":"Operations related to city management"},{"name":"State Management","description":"Operations related to state management"},{"name":"Test Controller","description":"Test endpoints for area service"},{"name":"Area Delivery Fees","description":"Operations for managing area delivery fees"},{"name":"Country Management","description":"Operations related to country management"},{"name":"Public Area APIs","description":"Public APIs for fetching serviceable cities and area details"}],"paths":{"/api/v1/state/{id}":{"get":{"tags":["State Management"],"summary":"Get state by ID","description":"Retrieves a specific state by ID","operationId":"getStateById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"State fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}},"put":{"tags":["State Management"],"summary":"Update existing state","description":"Updates an existing state by ID","operationId":"updateState","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StateRequest"}}},"required":true},"responses":{"400":{"description":"Invalid state data or ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"State updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/{id}/status/{status}":{"put":{"tags":["State Management"],"summary":"Update state status","description":"Updates the status of a state","operationId":"updateStateStatus","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Status updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/{id}/soft-delete":{"put":{"tags":["State Management"],"summary":"Soft delete state","description":"Sets a state's status to DELETED","operationId":"softDeleteState","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"State soft deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/{id}/deactivate":{"put":{"tags":["State Management"],"summary":"Deactivate state","description":"Sets a state's status to INACTIVE","operationId":"deactivateState","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"State deactivated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/{id}/activate":{"put":{"tags":["State Management"],"summary":"Activate state","description":"Sets a state's status to ACTIVE","operationId":"activateState","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"State activated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/{id}":{"get":{"tags":["Country Management"],"summary":"Get country by ID","description":"Retrieves a specific country by ID","operationId":"getCountryById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Country fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}},"put":{"tags":["Country Management"],"summary":"Update existing country","description":"Updates an existing country by ID","operationId":"updateCountry","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountryRequest"}}},"required":true},"responses":{"400":{"description":"Invalid country data or ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Country updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/{id}/status/{status}":{"put":{"tags":["Country Management"],"summary":"Update country status","description":"Updates the status of a country","operationId":"updateCountryStatus","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Status updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/{id}/soft-delete":{"put":{"tags":["Country Management"],"summary":"Soft delete country","description":"Sets a country's status to DELETED","operationId":"softDeleteCountry","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Country soft deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/{id}/deactivate":{"put":{"tags":["Country Management"],"summary":"Deactivate country","description":"Sets a country's status to INACTIVE","operationId":"deactivateCountry","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Country deactivated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/{id}/activate":{"put":{"tags":["Country Management"],"summary":"Activate country","description":"Sets a country's status to ACTIVE","operationId":"activateCountry","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Country activated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/{id}":{"get":{"tags":["City Management"],"summary":"Get city by ID","description":"Retrieves a specific city by ID","operationId":"getCityById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"City fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}},"put":{"tags":["City Management"],"summary":"Update existing city","description":"Updates an existing city by ID","operationId":"updateCity","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"required":["data"],"type":"object","properties":{"data":{"$ref":"#/components/schemas/CityRequest"},"file":{"type":"string","format":"binary"}}}}}},"responses":{"400":{"description":"Invalid city data or ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"City updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/{id}/status/{status}":{"put":{"tags":["City Management"],"summary":"Update city status","description":"Updates the status of a city","operationId":"updateCityStatus","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Status updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/{id}/soft-delete":{"put":{"tags":["City Management"],"summary":"Soft delete city","description":"Sets a city's status to DELETED","operationId":"softDeleteCity","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"City soft deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/{id}/deactivate":{"put":{"tags":["City Management"],"summary":"Deactivate city","description":"Sets a city's status to INACTIVE","operationId":"deactivateCity","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"City deactivated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/{id}/activate":{"put":{"tags":["City Management"],"summary":"Activate city","description":"Sets a city's status to ACTIVE","operationId":"activateCity","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"City activated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/{id}":{"get":{"tags":["Area Management"],"summary":"Get area by ID","description":"Retrieves a specific area by ID","operationId":"getAreaById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}},"put":{"tags":["Area Management"],"summary":"Update existing area","description":"Updates an existing area by ID","operationId":"updateArea","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AreaRequest"}}},"required":true},"responses":{"400":{"description":"Invalid area data or ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Area updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/{id}/status/{status}":{"put":{"tags":["Area Management"],"summary":"Update area status","description":"Updates the status of an area","operationId":"updateAreaStatus","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Status updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/{id}/soft-delete":{"put":{"tags":["Area Management"],"summary":"Soft delete area","description":"Sets an area's status to DELETED","operationId":"softDeleteArea","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area soft deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/{id}/deactivate":{"put":{"tags":["Area Management"],"summary":"Deactivate area","description":"Sets an area's status to INACTIVE","operationId":"deactivateArea","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area deactivated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/{id}/activate":{"put":{"tags":["Area Management"],"summary":"Activate area","description":"Sets an area's status to ACTIVE","operationId":"activateArea","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Area activated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/{id}":{"get":{"tags":["Area Delivery Fees"],"summary":"Get area delivery fee by ID","description":"Retrieve a specific area delivery fee by its ID","operationId":"getAreaDeliveryFeeById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area delivery fee retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}},"put":{"tags":["Area Delivery Fees"],"summary":"Update an existing area delivery fee","description":"Update an existing delivery fee for an area","operationId":"updateAreaDeliveryFee","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AreaDeliveryFeeRequest"}}},"required":true},"responses":{"200":{"description":"Area delivery fee updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Bad request - validation errors or duplicate range","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/{id}/soft-delete":{"put":{"tags":["Area Delivery Fees"],"summary":"Soft delete area delivery fee","description":"Set the status of an area delivery fee to DELETED","operationId":"softDeleteAreaDeliveryFee","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area delivery fee deleted successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/{id}/deactivate":{"put":{"tags":["Area Delivery Fees"],"summary":"Deactivate area delivery fee","description":"Set the status of an area delivery fee to INACTIVE","operationId":"deactivateAreaDeliveryFee","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area delivery fee deactivated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/{id}/activate":{"put":{"tags":["Area Delivery Fees"],"summary":"Activate area delivery fee","description":"Set the status of an area delivery fee to ACTIVE","operationId":"activateAreaDeliveryFee","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area delivery fee activated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/import":{"post":{"tags":["State Management"],"summary":"Import states","description":"Import states from a file","operationId":"importStates","parameters":[{"name":"fileType","in":"query","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"States imported successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid file or file type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/create":{"post":{"tags":["State Management"],"summary":"Create new state","description":"Creates a new state","operationId":"createState","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StateRequest"}}},"required":true},"responses":{"400":{"description":"Invalid state data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"201":{"description":"State created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/bulk":{"post":{"tags":["State Management"],"summary":"Create multiple states","description":"Creates multiple states in a single request","operationId":"createBulkStates","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/StateRequest"}}}},"required":true},"responses":{"400":{"description":"Invalid state data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"201":{"description":"States created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/import":{"post":{"tags":["Country Management"],"summary":"Import countries","description":"Import countries from a file","operationId":"importCountries","parameters":[{"name":"fileType","in":"query","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"Countries imported successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid file or file type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/create":{"post":{"tags":["Country Management"],"summary":"Create new country","description":"Creates a new country","operationId":"createCountry","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountryRequest"}}},"required":true},"responses":{"400":{"description":"Invalid country data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"201":{"description":"Country created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/bulk":{"post":{"tags":["Country Management"],"summary":"Create multiple countries","description":"Creates multiple countries in a single request","operationId":"createBulkCountries","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CountryRequest"}}}},"required":true},"responses":{"400":{"description":"Invalid country data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"201":{"description":"Countries created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/import":{"post":{"tags":["City Management"],"summary":"Import cities","description":"Import cities from a file","operationId":"importCities","parameters":[{"name":"fileType","in":"query","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"Cities imported successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid file or file type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/create":{"post":{"tags":["City Management"],"summary":"Create new city","description":"Creates a new city","operationId":"createCity","requestBody":{"content":{"multipart/form-data":{"schema":{"required":["data"],"type":"object","properties":{"data":{"$ref":"#/components/schemas/CityRequest"},"file":{"type":"string","format":"binary"}}}}}},"responses":{"201":{"description":"City created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid city data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/bulk":{"post":{"tags":["City Management"],"summary":"Create multiple cities","description":"Creates multiple cities in a single request","operationId":"createBulkCities","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CityRequest"}}}},"required":true},"responses":{"201":{"description":"Cities created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid city data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/postal-areas/upload-csv":{"post":{"tags":["postal-area-csv-controller"],"operationId":"uploadCsvFile","requestBody":{"content":{"application/json":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"object","additionalProperties":{"type":"object"}}}}}}}},"/api/v1/area/postal-areas/load-from-url":{"post":{"tags":["postal-area-csv-controller"],"operationId":"loadAreasFromUrl","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"object","additionalProperties":{"type":"object"}}}}}}}},"/api/v1/area/postal-areas/load-from-file":{"post":{"tags":["postal-area-csv-controller"],"operationId":"loadAreasFromFile","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"object","additionalProperties":{"type":"object"}}}}}}}},"/api/v1/area/import":{"post":{"tags":["Area Management"],"summary":"Import areas","description":"Import areas from a file","operationId":"importAreas","parameters":[{"name":"fileType","in":"query","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","format":"binary"}}}}}},"responses":{"200":{"description":"Areas imported successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid file or file type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/create":{"post":{"tags":["Area Management"],"summary":"Create new area","description":"Creates a new area","operationId":"createArea","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AreaRequest"}}},"required":true},"responses":{"201":{"description":"Area created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid area data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/bulk":{"post":{"tags":["Area Management"],"summary":"Create multiple areas","description":"Creates multiple areas in a single request","operationId":"createBulkAreas","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AreaRequest"}}}},"required":true},"responses":{"201":{"description":"Areas created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid area data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/create":{"post":{"tags":["Area Delivery Fees"],"summary":"Create a new area delivery fee","description":"Create a new delivery fee for an area based on distance range","operationId":"createAreaDeliveryFee","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AreaDeliveryFeeRequest"}}},"required":true},"responses":{"201":{"description":"Area delivery fee created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Bad request - validation errors or duplicate range","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/{id}/status":{"patch":{"tags":["Area Delivery Fees"],"summary":"Update area delivery fee status","description":"Update the status of an area delivery fee","operationId":"updateAreaDeliveryFeeStatus","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Area delivery fee status updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area delivery fee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/test/health":{"get":{"tags":["Test Controller"],"summary":"Test endpoint","description":"Simple test endpoint to check if service is running","operationId":"testEndpoint","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/MyApiResponseString"}}}}}}},"/api/v1/state/status/{status}":{"get":{"tags":["State Management"],"summary":"Get states by status","description":"Retrieves states with a specific status","operationId":"getStatesByStatus","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"States retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/statistics":{"get":{"tags":["State Management"],"summary":"Get state statistics","description":"Retrieves statistics about states","operationId":"getStateStatistics","responses":{"200":{"description":"Statistics retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/search":{"get":{"tags":["State Management"],"summary":"Search states","description":"Search for states by name and code","operationId":"searchStates","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string"}},{"name":"code","in":"query","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"States retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/country/{countryId}":{"get":{"tags":["State Management"],"summary":"Get states by country","description":"Retrieves states by country ID","operationId":"getStatesByCountry","parameters":[{"name":"countryId","in":"path","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"States retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/count":{"get":{"tags":["State Management"],"summary":"Count states","description":"Returns the total number of states","operationId":"countStates","responses":{"200":{"description":"Count retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/code/{code}":{"get":{"tags":["State Management"],"summary":"Get state by code","description":"Retrieves a specific state by its code","operationId":"getStateByCode","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"State fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"State not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/state/all":{"get":{"tags":["State Management"],"summary":"Get all states with pagination","description":"Retrieves all states with pagination, sorting and filtering support","operationId":"getAllStates","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"name"}},{"name":"sortDir","in":"query","required":false,"schema":{"type":"string","default":"asc"}},{"name":"search","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"States fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/public/area/pincode/{pincode}":{"get":{"tags":["Public Area APIs"],"summary":"Get area details by pincode","description":"Fetch all Areas, Cities, and State details for a given pincode","operationId":"getAreaByPincode","parameters":[{"name":"pincode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/MyApiResponseListAreaResponseDTO"}}}}}}},"/api/v1/public/area/cities":{"get":{"tags":["Public Area APIs"],"summary":"Get all serviceable cities","description":"Fetch all active cities where service is available","operationId":"getServiceableCities","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/MyApiResponseListCityResponseDTO"}}}}}}},"/api/v1/public/area/check-availability/{pincode}":{"get":{"tags":["Public Area APIs"],"summary":"Check service availability","description":"Check if service is available at the given pincode and return location info","operationId":"checkAvailability","parameters":[{"name":"pincode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/MyApiResponseMapStringObject"}}}}}}},"/api/v1/geography/pincode/{pincode}":{"get":{"tags":["Geography Management"],"summary":"Get area details by pincode","description":"Retrieves complete geographical hierarchy (Country > State > City > Area) for a given pincode. Returns list of areas matching the pincode.","operationId":"getAreaByPincode_1","parameters":[{"name":"pincode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area details fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"No areas found for the given pincode","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid pincode format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/geography/lookup":{"get":{"tags":["Geography Management"],"summary":"Lookup area by pincode (query parameter)","description":"Alternative endpoint to lookup area details using query parameter. Returns list of areas matching the pincode.","operationId":"lookupAreaByPincode","parameters":[{"name":"pincode","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area details fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"No areas found for the given pincode","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Pincode parameter is required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/status/{status}":{"get":{"tags":["Country Management"],"summary":"Get countries by status","description":"Retrieves countries with a specific status. Valid statuses: ACTIVE, INACTIVE, DELETED","operationId":"getCountriesByStatus","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Countries retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status parameter","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/status/{status}/paginated":{"get":{"tags":["Country Management"],"summary":"Get countries by status with pagination","description":"Retrieves countries with a specific status using pagination","operationId":"getCountriesByStatusPaginated","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"name"}},{"name":"sortDir","in":"query","required":false,"schema":{"type":"string","default":"asc"}},{"name":"search","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"400":{"description":"Invalid pagination parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Countries retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/statistics":{"get":{"tags":["Country Management"],"summary":"Get country statistics","description":"Retrieves statistics about countries","operationId":"getCountryStatistics","responses":{"200":{"description":"Statistics retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/search":{"get":{"tags":["Country Management"],"summary":"Search countries","description":"Search for countries by name, code, and country","operationId":"searchCountries","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string"}},{"name":"code","in":"query","required":false,"schema":{"type":"string"}},{"name":"country","in":"query","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"Countries retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/paginated":{"get":{"tags":["Country Management"],"summary":"Get countries with pagination","description":"Get countries with pagination, sorting, and filtering support","operationId":"getAllCountriesPaginated","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"name"}},{"name":"sortDir","in":"query","required":false,"schema":{"type":"string","default":"asc"}},{"name":"search","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"400":{"description":"Invalid pagination parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Countries fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/count":{"get":{"tags":["Country Management"],"summary":"Count countries","description":"Returns the total number of countries","operationId":"countCountries","responses":{"200":{"description":"Count retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/code/{code}":{"get":{"tags":["Country Management"],"summary":"Get country by code","description":"Retrieves a specific country by its code","operationId":"getCountryByCode","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Country fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Country not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/country/all":{"get":{"tags":["Country Management"],"summary":"Get all countries","description":"Retrieves all countries","operationId":"getAllCountries","responses":{"200":{"description":"Countries fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/status/{status}":{"get":{"tags":["City Management"],"summary":"Get cities by status","description":"Retrieves cities with a specific status","operationId":"getCitiesByStatus","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Cities retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/statistics":{"get":{"tags":["City Management"],"summary":"Get city statistics","description":"Retrieves statistics about cities","operationId":"getCityStatistics","responses":{"200":{"description":"Statistics retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/state/{stateId}":{"get":{"tags":["City Management"],"summary":"Get cities by state","description":"Retrieves cities by state ID","operationId":"getCitiesByState","parameters":[{"name":"stateId","in":"path","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":30}}],"responses":{"200":{"description":"Cities retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/search":{"get":{"tags":["City Management"],"summary":"Search cities","description":"Search for cities by name and code","operationId":"searchCities","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string"}},{"name":"code","in":"query","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"Cities retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/count":{"get":{"tags":["City Management"],"summary":"Count cities","description":"Returns the total number of cities","operationId":"countCities","responses":{"200":{"description":"Count retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/code/{code}":{"get":{"tags":["City Management"],"summary":"Get city by code","description":"Retrieves a specific city by its code","operationId":"getCityByCode","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"City fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"City not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/all":{"get":{"tags":["City Management"],"summary":"Get all cities with pagination","description":"Retrieves all cities with optional pagination and state filtering","operationId":"getAllCities","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"name"}},{"name":"sortDir","in":"query","required":false,"schema":{"type":"string","default":"asc"}},{"name":"search","in":"query","required":false,"schema":{"type":"string"}},{"name":"stateId","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Cities fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/city/all-simple":{"get":{"tags":["City Management"],"summary":"Get all cities (simple)","description":"Retrieves all cities without pagination for backward compatibility","operationId":"getAllCitiesSimple","responses":{"200":{"description":"Cities fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/status/{status}":{"get":{"tags":["Area Management"],"summary":"Get areas by status","description":"Retrieves areas with a specific status","operationId":"getAreasByStatus","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Areas retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/statistics":{"get":{"tags":["Area Management"],"summary":"Get area statistics","description":"Retrieves statistics about areas","operationId":"getAreaStatistics","responses":{"200":{"description":"Statistics retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/state/{stateId}":{"get":{"tags":["Area Management"],"summary":"Get areas by state","description":"Retrieves areas by state ID using city relationship","operationId":"getAreasByState","parameters":[{"name":"stateId","in":"path","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"Areas retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/search":{"get":{"tags":["Area Management"],"summary":"Search areas","description":"Search for areas by name, code, and postal code","operationId":"searchAreas","parameters":[{"name":"name","in":"query","required":false,"schema":{"type":"string"}},{"name":"code","in":"query","required":false,"schema":{"type":"string"}},{"name":"postalCode","in":"query","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"Areas retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/postal-code/{postalCode}":{"get":{"tags":["Area Management"],"summary":"Get area by postal code","description":"Retrieves a specific area by its postal code","operationId":"getAreaByPostalCode","parameters":[{"name":"postalCode","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/list":{"get":{"tags":["Area Management"],"summary":"Get all areas without pagination","description":"Retrieves all areas as a simple list","operationId":"getAllAreasSimple","responses":{"200":{"description":"Areas fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/count":{"get":{"tags":["Area Management"],"summary":"Count areas","description":"Returns the total number of areas","operationId":"countAreas","responses":{"200":{"description":"Count retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/code/{code}":{"get":{"tags":["Area Management"],"summary":"Get area by code","description":"Retrieves a specific area by its code","operationId":"getAreaByCode","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"Area not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/city/{cityId}":{"get":{"tags":["Area Management"],"summary":"Get areas by city","description":"Retrieves areas by city ID","operationId":"getAreasByCity","parameters":[{"name":"cityId","in":"path","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}}],"responses":{"200":{"description":"Areas retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area/all":{"get":{"tags":["Area Management"],"summary":"Get all areas with pagination","description":"Retrieves all areas with pagination support","operationId":"getAllAreas","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"name"}},{"name":"sortDir","in":"query","required":false,"schema":{"type":"string","default":"asc"}},{"name":"search","in":"query","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"type":"string"}},{"name":"cityId","in":"query","required":false,"schema":{"type":"string"}},{"name":"stateId","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Areas fetched successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/get-charge":{"get":{"tags":["Area Delivery Fees"],"summary":"Get delivery charge by distance","description":"Get the delivery charge for a specific area based on the distance in kilometers","operationId":"getDeliveryChargeByKm","parameters":[{"name":"areaId","in":"query","required":true,"schema":{"type":"string"}},{"name":"distance","in":"query","required":true,"schema":{"minimum":0.0,"exclusiveMinimum":false,"type":"number","format":"double"}}],"responses":{"400":{"description":"Bad request - validation errors or invalid distance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"404":{"description":"No delivery fee configured for this area or distance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"200":{"description":"Delivery charge retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/by-status/{status}":{"get":{"tags":["Area Delivery Fees"],"summary":"Get area delivery fees by status","description":"Retrieve all area delivery fees with a specific status","operationId":"getAreaDeliveryFeesByStatus","parameters":[{"name":"status","in":"path","required":true,"schema":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}],"responses":{"200":{"description":"Area delivery fees retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"400":{"description":"Invalid status value","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/by-area/{areaId}":{"get":{"tags":["Area Delivery Fees"],"summary":"Get area delivery fees by area ID","description":"Retrieve all delivery fees for a specific area","operationId":"getAreaDeliveryFeesByAreaId","parameters":[{"name":"areaId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Area delivery fees retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/api/v1/area-delivery-fee/all":{"get":{"tags":["Area Delivery Fees"],"summary":"Get all area delivery fees","description":"Retrieve all area delivery fees","operationId":"getAllAreaDeliveryFees","responses":{"200":{"description":"Area delivery fees retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MyApiResponse"}}}}}}},"/":{"get":{"tags":["root-controller"],"operationId":"index","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"type":"string"}}}}}}}},"components":{"schemas":{"StateRequest":{"required":["code","countryId","name"],"type":"object","properties":{"name":{"maxLength":100,"minLength":2,"type":"string"},"code":{"maxLength":10,"minLength":2,"type":"string"},"countryId":{"type":"string"},"currencyId":{"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"MyApiResponse":{"type":"object","properties":{"error":{"type":"boolean"},"statusCode":{"type":"integer","format":"int32"},"message":{"type":"string"},"data":{"type":"object"}}},"CountryRequest":{"required":["code","name","symbol"],"type":"object","properties":{"name":{"maxLength":100,"minLength":2,"type":"string"},"code":{"maxLength":10,"minLength":2,"type":"string"},"symbol":{"maxLength":10,"minLength":0,"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"CityRequest":{"required":["name","stateId"],"type":"object","properties":{"name":{"maxLength":100,"minLength":2,"type":"string"},"code":{"maxLength":10,"minLength":2,"type":"string"},"stateId":{"type":"string"},"imageUrl":{"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"AreaRequest":{"required":["cityId","code","name","postalCode"],"type":"object","properties":{"name":{"maxLength":100,"minLength":2,"type":"string"},"code":{"maxLength":10,"minLength":2,"type":"string"},"cityId":{"type":"string"},"postalCode":{"maxLength":20,"minLength":2,"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"AreaDeliveryFeeRequest":{"required":["areaId","charge","fromKm","toKm"],"type":"object","properties":{"areaId":{"type":"string"},"fromKm":{"minimum":0.0,"exclusiveMinimum":false,"type":"number","format":"double"},"toKm":{"minimum":0.0,"exclusiveMinimum":false,"type":"number","format":"double"},"charge":{"minimum":0.0,"exclusiveMinimum":false,"type":"number"}}},"MyApiResponseString":{"type":"object","properties":{"error":{"type":"boolean"},"statusCode":{"type":"integer","format":"int32"},"message":{"type":"string"},"data":{"type":"string"}}},"AreaResponseDTO":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"details":{"type":"string"},"code":{"type":"string"},"cityId":{"type":"string"},"cityName":{"type":"string"},"stateId":{"type":"string"},"stateName":{"type":"string"},"postalCode":{"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"MyApiResponseListAreaResponseDTO":{"type":"object","properties":{"error":{"type":"boolean"},"statusCode":{"type":"integer","format":"int32"},"message":{"type":"string"},"data":{"type":"array","items":{"$ref":"#/components/schemas/AreaResponseDTO"}}}},"CityResponseDTO":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"stateId":{"type":"string"},"stateName":{"type":"string"},"areaCount":{"type":"integer","format":"int32"},"imageUrl":{"type":"string"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","DELETED"]}}},"MyApiResponseListCityResponseDTO":{"type":"object","properties":{"error":{"type":"boolean"},"statusCode":{"type":"integer","format":"int32"},"message":{"type":"string"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CityResponseDTO"}}}},"MyApiResponseMapStringObject":{"type":"object","properties":{"error":{"type":"boolean"},"statusCode":{"type":"integer","format":"int32"},"message":{"type":"string"},"data":{"type":"object","additionalProperties":{"type":"object"}}}}}}}