1645 lines
39 KiB
JSON
1645 lines
39 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "Attica Server Application v1",
|
|
"description": "Version 1 of Attica Server Application API",
|
|
"license": {
|
|
"name": "MIT",
|
|
"url": "https://opensource.org/licenses/MIT"
|
|
},
|
|
"version": "1.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "http://localhost:3000/v0"
|
|
},
|
|
{
|
|
"url": "https://erp-server.triadkube.com/v0"
|
|
}
|
|
],
|
|
"security": [
|
|
{
|
|
"bearerAuth": []
|
|
}
|
|
],
|
|
"components": {
|
|
"securitySchemes": {
|
|
"bearerAuth": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"bearerFormat": "JWT"
|
|
}
|
|
}
|
|
},
|
|
"paths": {
|
|
"/user/create": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Create Account for New User",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/user/login": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Login with Employee Id and Password",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/user/token/renew": {
|
|
"post": {
|
|
"tags": [
|
|
"Auth"
|
|
],
|
|
"summary": "Login with Employee Code and Password",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"refreshToken": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/user/accessible-modules": {
|
|
"get": {
|
|
"tags": [
|
|
"User"
|
|
],
|
|
"summary": "Get the List of Accessible Modules for a User",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/profile": {
|
|
"post": {
|
|
"tags": [
|
|
"Profile"
|
|
],
|
|
"summary": "Create or Edit Profile New User",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"pincode": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": [
|
|
"Profile"
|
|
],
|
|
"summary": "Get Profile for a User",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/location/create": {
|
|
"post": {
|
|
"tags": [
|
|
"Location"
|
|
],
|
|
"summary": "Create New Location",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "key",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"coordinates": {
|
|
"type": "array",
|
|
"required": true
|
|
},
|
|
"venue": {
|
|
"type": "string",
|
|
"required": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/location/venues/assigned/me": {
|
|
"get": {
|
|
"tags": [
|
|
"Location"
|
|
],
|
|
"summary": "Get Assigned Venues for creating Geofence",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/uploads/single/{folder}": {
|
|
"post": {
|
|
"tags": [
|
|
"Uploads"
|
|
],
|
|
"summary": "Endpoint to handle Single File",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "folder"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/access": {
|
|
"post": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Create Access for an Employee",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "array",
|
|
"required": true
|
|
},
|
|
"department": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"branch": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/branches": {
|
|
"get": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Get All Branches",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/metadata": {
|
|
"get": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Get All Metadata",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/employees": {
|
|
"get": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Get All Employees",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/branch": {
|
|
"post": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Create New Branch",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"pincode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"coordinates": {
|
|
"type": "object",
|
|
"required": true,
|
|
"properties": {
|
|
"latitude": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"longitude": {
|
|
"type": "number",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/designation": {
|
|
"post": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Create New Designation",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/department": {
|
|
"post": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Create New Department",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/role": {
|
|
"post": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Create New Role",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/role/{id}": {
|
|
"patch": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Edit New Role",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id"
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/employee/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Get Employee Details by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/admin/employee/{user}/locations": {
|
|
"get": {
|
|
"tags": [
|
|
"Admin"
|
|
],
|
|
"summary": "Get Employee Details by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "user",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "date",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/assignment": {
|
|
"post": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Create an assignment",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"venue": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"targetedVisits": {
|
|
"type": "number",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/assignment/{id}": {
|
|
"patch": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Update an assignment",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"user": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"venue": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"targetedVisits": {
|
|
"type": "number",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Update an assignment",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Delete an assignment",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/assignment/user/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Get all assignments for a user",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"description": "User ID",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/assignment/venue/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Assignment"
|
|
],
|
|
"summary": "Get all assignments for a Venue",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"description": "Venue ID",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/partner": {
|
|
"get": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Get all Partners",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Create New Partner",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"phone": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"pincode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"contactPersons": {
|
|
"type": "array",
|
|
"required": true,
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/partner/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Get Partner Details by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Update Partner Details by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"phone": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"pincode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"contactPersons": {
|
|
"type": "array",
|
|
"required": true,
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Deactivate Partner by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/partner/{id}/approve": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Approve a Partner added by an Executive",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"/partner/unapproved": {
|
|
"tags": [
|
|
"Partner"
|
|
],
|
|
"summary": "Get all Unapproved Partners",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"/venue/": {
|
|
"post": {
|
|
"tags": [
|
|
"Venues"
|
|
],
|
|
"summary": "Create New Venue",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"entity": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"pincode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"contactPerson": {
|
|
"type": "object",
|
|
"required": true,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
},
|
|
"location": {
|
|
"type": "object",
|
|
"required": true,
|
|
"properties": {
|
|
"latitude": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"longitude": {
|
|
"type": "number",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/venue/entity/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Venues"
|
|
],
|
|
"summary": "Get Venues by Entity",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"description": "Entity ID",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"response": {
|
|
"200": {
|
|
"description": "Success",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/venue/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Venues"
|
|
],
|
|
"summary": "Get Venue by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"description": "Venue ID",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"respose": {
|
|
"200": {
|
|
"description": "Success",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Venues"
|
|
],
|
|
"summary": "Delete Venue by ID",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "id",
|
|
"description": "Venue ID",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"respose": {
|
|
"200": {
|
|
"description": "Success",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/product": {
|
|
"post": {
|
|
"summary": "Create a New Product",
|
|
"tags": [
|
|
"Product"
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sku": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"stock": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"buyingPrice": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"sellingPrice": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"gst": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"hsn": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"vendors": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"get": {
|
|
"summary": "Get All Products",
|
|
"tags": [
|
|
"Product"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/product/{id}": {
|
|
"patch": {
|
|
"summary": "Update a Product",
|
|
"tags": [
|
|
"Product"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Product ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sku": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"stock": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"buyingPrice": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"sellingPrice": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"gst": {
|
|
"type": "number",
|
|
"required": true
|
|
},
|
|
"hsn": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"vendors": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"summary": "Delete a Product",
|
|
"tags": [
|
|
"Product"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Product ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/vendor/all": {
|
|
"get": {
|
|
"summary": "Get All Vendors",
|
|
"tags": [
|
|
"Vendor"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/vendor/{id}": {
|
|
"get": {
|
|
"summary": "Get Vendor Details",
|
|
"tags": [
|
|
"Vendor"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Vendor ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"patch": {
|
|
"summary": "Get Vendor Details",
|
|
"tags": [
|
|
"Vendor"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Vendor ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"picode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"isActive": {
|
|
"type": "boolean",
|
|
"required": true
|
|
},
|
|
"contactPersons": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"summary": "Deactivate Vendor",
|
|
"tags": [
|
|
"Vendor"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Vendor ID",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/vendor": {
|
|
"post": {
|
|
"summary": "Create New Vendor",
|
|
"tags": [
|
|
"Vendor"
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"address": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"picode": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"isActive": {
|
|
"type": "boolean",
|
|
"required": true
|
|
},
|
|
"contactPersons": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"mobile": {
|
|
"type": "string",
|
|
"required": true
|
|
},
|
|
"designation": {
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |