{
    "openapi": "3.0.1",
    "info": {
        "title": "EmployeeServiceAPI",
        "version": "3.14"
    },
    "servers": [
        {
            "url": "http://employee-service:8080",
            "description": "Server URL",
            "variables": {}
        }
    ],
    "paths": {
        "/employees": {
            "get": {
                "tags": [
                    "employee-controller"
                ],
                "operationId": "getEmployees",
                "parameters": [
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "default response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Employee"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/employee": {
            "post": {
                "tags": [
                    "employee-controller"
                ],
                "operationId": "addEmployee",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Employee"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "default response",
                        "content": {
                            "*/*": {
                                "schema": {
                                    "$ref": "#/components/schemas/Employee"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/employee/{employeeId}": {
            "put": {
                "tags": [
                    "employee-controller"
                ],
                "operationId": "editEmployee",
                "parameters": [
                    {
                        "name": "employeeId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "format": "int32"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "default response",
                        "content": {
                            "*/*": {
                                "schema": {
                                    "$ref": "#/components/schemas/Employee"
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "employee-controller"
                ],
                "operationId": "deleteEmployee",
                "parameters": [
                    {
                        "name": "employeeId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "format": "int32"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "default response",
                        "content": {
                            "*/*": {
                                "schema": {
                                    "$ref": "#/components/schemas/Employee"
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "Employee": {
                "type": "object",
                "properties": {
                    "empId": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "designation": {
                        "type": "string"
                    },
                    "salary": {
                        "type": "number",
                        "format": "double"
                    }
                }
            }
        }
    }
}