API icon

API

Web API for TL mobile and web app

COMMUNITYBEARER0 INSTALLS
API Docs
OpenAPI Specificationv3.0
{
  "openapi": "3.0.0",
  "servers": [
    {
      "url": "https://tl-api.azurewebsites.net"
    },
    {
      "url": "https://triviallife.azure-api.net/v1"
    }
  ],
  "info": {
    "contact": {
      "email": "support@unicorn-solutions.com",
      "name": "Unicorn Solutions",
      "url": "https://unicorn-solutions.com"
    },
    "description": "Web API for TL mobile and web app",
    "license": {
      "name": "Use under Unicorn",
      "url": "https://unicorn-solutions.com"
    },
    "termsOfService": "None",
    "title": "API",
    "version": "2020-08-10_6-22",
    "x-origin": [
      {
        "format": "openapi",
        "url": "https://tl-api.azurewebsites.net/swagger/default/swagger.json",
        "version": "3.0"
      }
    ],
    "x-providerName": "tl-api.azurewebsites.net",
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_apis.guru_assets_images_no-logo.svg"
    }
  },
  "security": [
    {
      "bearer": []
    }
  ],
  "paths": {
    "/api/Article": {
      "delete": {
        "operationId": "Article_Delete",
        "parameters": [
          {
            "description": "indentity number(primary key) for article object",
            "in": "query",
            "name": "ArticleId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfInteger"
                }
              }
            },
            "description": "operation was success(true) or fail(false) "
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfInteger"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Delete article from the system\n            ",
        "tags": [
          "Article"
        ]
      },
      "post": {
        "operationId": "Article_Post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ArticleDTO"
              }
            }
          },
          "description": "article object",
          "required": true,
          "x-name": "article",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": "messageId that can use to get the status of import later on.!"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Add new article\n            ",
        "tags": [
          "Article"
        ]
      },
      "put": {
        "operationId": "Article_Put",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ArticleDTO"
              }
            }
          },
          "description": "article object",
          "required": true,
          "x-name": "article",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": "messageId that can use to get the status of import later on.!"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "update existing article\n            ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/ArticleGymDetails": {
      "put": {
        "operationId": "Article_UpdateArticleGymDetails",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "items": {
                  "$ref": "#/components/schemas/GymArticleDetailsDTO"
                },
                "type": "array"
              }
            }
          },
          "required": true,
          "x-name": "articleDetails",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": "messageId that can use to get the status of import later on.!"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Add article details that associate with a Gym\n            ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/GetAddons": {
      "get": {
        "operationId": "Article_GetAddons",
        "parameters": [
          {
            "description": "Search text - will be search by the name",
            "in": "query",
            "name": "searchText",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 1
          },
          {
            "description": "Comma separated gymIds deafult \"-1\" for all gyms",
            "in": "query",
            "name": "gymIds",
            "schema": {
              "default": "-1",
              "nullable": true,
              "type": "string"
            },
            "x-position": 2
          },
          {
            "in": "query",
            "name": "type",
            "schema": {
              "default": "all",
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          },
          {
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 100,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 4
          },
          {
            "in": "query",
            "name": "offset",
            "schema": {
              "default": 0,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 5
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfArticleSearchDTO"
                }
              }
            },
            "description": ""
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfArticleSearchDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/GymArticle/{articleId}/{gymId}": {
      "get": {
        "operationId": "Article_GymArticleDetails",
        "parameters": [
          {
            "description": "indentity number(primary key) for article object",
            "in": "path",
            "name": "articleId",
            "required": true,
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          },
          {
            "description": "indentity number(primary key) for gym object",
            "in": "path",
            "name": "gymId",
            "required": true,
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GymArticleDetailsDTO"
                }
              }
            },
            "description": "API Response with Article entity"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfArticleSearchDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get Gym specific properties for article\n            ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/MeasureUnit": {
      "post": {
        "operationId": "Article_AddMeasureUnit",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "items": {
                  "$ref": "#/components/schemas/MeasureUnitDTO"
                },
                "type": "array"
              }
            }
          },
          "description": "list of measureUnit",
          "required": true,
          "x-name": "measureUnits",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Add measure unit",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/MeasureUnits": {
      "get": {
        "operationId": "Article_GetMeasureUnits",
        "parameters": [
          {
            "description": "type of the measure unit (all, item, service)",
            "in": "query",
            "name": "type",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get mesure units",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/RevenueAccounts": {
      "get": {
        "operationId": "Article_GetRevenueAccounts",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get Revenue Accounts ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/Search": {
      "get": {
        "operationId": "Article_Search",
        "parameters": [
          {
            "description": "part of article name",
            "in": "query",
            "name": "searchText",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 1
          },
          {
            "description": "-1 for all gyms ",
            "in": "query",
            "name": "gymId",
            "schema": {
              "default": -1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 2
          },
          {
            "description": "filter article type. default is 'all'",
            "in": "query",
            "name": "type",
            "schema": {
              "default": "all",
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          },
          {
            "description": "order by column.!-- invalid column will give internal server error",
            "in": "query",
            "name": "orderBy",
            "schema": {
              "default": "1",
              "nullable": true,
              "type": "string"
            },
            "x-position": 4
          },
          {
            "description": "number of recode in result and default is 100. use negative numbers to order by desc",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 100,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 5
          },
          {
            "description": "number of recodes to skip",
            "in": "query",
            "name": "offset",
            "schema": {
              "default": 0,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 6
          },
          {
            "description": "Active Status 1 : Active, 2: Inactive, 3: All, Default : 1",
            "in": "query",
            "name": "activeStatus",
            "schema": {
              "default": 1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 7
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfArticleSearchDTO"
                }
              }
            },
            "description": "API Response with set of a Article entities"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfArticleSearchDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Search articles\nIt will only return basic information of article\n            ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/UpdateStatus": {
      "put": {
        "operationId": "Article_UpdateStatus",
        "parameters": [
          {
            "in": "query",
            "name": "ArticleId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          },
          {
            "description": "1 : activate , 2 deactivate",
            "in": "query",
            "name": "status",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 2
          },
          {
            "description": "Updating user",
            "in": "query",
            "name": "userName",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfInteger"
                }
              }
            },
            "description": ""
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfInteger"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Deactivate existing article ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Article/{articleID}": {
      "get": {
        "operationId": "Article_get",
        "parameters": [
          {
            "description": "indentity number (primary key) for article object",
            "in": "path",
            "name": "articleID",
            "required": true,
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfArticleDTO"
                }
              }
            },
            "description": "API Response with Article entity"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get article details\nThis will return all properties related to article entity\n            ",
        "tags": [
          "Article"
        ]
      }
    },
    "/api/Auth/login": {
      "post": {
        "operationId": "Auth_Login",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginDTO"
              }
            }
          },
          "description": "Login Credentials",
          "required": true,
          "x-name": "user",
          "x-position": 1
        },
        "responses": {
          "200": {
            "content": {
              "application/octet-stream": {
                "schema": {
                  "format": "binary",
                  "type": "string"
                }
              }
            },
            "description": "Authorizized with a new token or unauthorized request."
          }
        },
        "summary": "Authenticate and provide token for autherizations.\n            ",
        "tags": [
          "Auth"
        ]
      }
    },
    "/api/Gym/{gymID}": {
      "get": {
        "operationId": "Gym_get",
        "parameters": [
          {
            "description": "indentity number (primary key) for gym object",
            "in": "path",
            "name": "gymID",
            "required": true,
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfGymDTO"
                }
              }
            },
            "description": "API Response with Gym entity"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get gym details\nThis will return all properties related to gym entity\n            ",
        "tags": [
          "Gym"
        ]
      }
    },
    "/api/Membership": {
      "get": {
        "operationId": "Membership_Get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/MemberDTO"
                  },
                  "type": "array"
                }
              }
            },
            "description": "API Response with all Members entity as a list."
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            },
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get all of the members details\nThis will return all properties related to member entity\n            ",
        "tags": [
          "Membership"
        ]
      },
      "post": {
        "operationId": "Membership_Post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MemberDTO"
              }
            }
          },
          "description": "member object",
          "required": true,
          "x-name": "member",
          "x-position": 1
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            },
            "description": "newly created member entity"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Add new Member\n            ",
        "tags": [
          "Membership"
        ]
      }
    },
    "/api/Package": {
      "delete": {
        "operationId": "Package_Delete",
        "parameters": [
          {
            "description": "primary key of package entity",
            "in": "query",
            "name": "PackageId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfBoolean"
                }
              }
            },
            "description": "status 1  : success, status 404 : package not found, status -2: package already in use "
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfString"
                }
              }
            },
            "description": ""
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfString"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Delete existing package\n            ",
        "tags": [
          "Package"
        ]
      },
      "get": {
        "operationId": "Package_Get",
        "parameters": [
          {
            "description": "primary key of package entity",
            "in": "query",
            "name": "packageId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfPackageDTO"
                }
              }
            },
            "description": "all the fields that related to the package"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfPackageDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get package details by packageId\n            ",
        "tags": [
          "Package"
        ]
      },
      "post": {
        "operationId": "Package_Post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PackageDTO"
              }
            }
          },
          "description": "package object",
          "required": true,
          "x-name": "package",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": "messageId that can use to get the status of import later on.!"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Insert new package into the system\n            ",
        "tags": [
          "Package"
        ]
      },
      "put": {
        "operationId": "Package_Put",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PackageDTO"
              }
            }
          },
          "description": "package object",
          "required": true,
          "x-name": "package",
          "x-position": 1
        },
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfStatusDTO"
                }
              }
            },
            "description": "messageId that can use to get the status of import later on.!"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Update existing package by its ID\n            ",
        "tags": [
          "Package"
        ]
      }
    },
    "/api/Package/Search": {
      "get": {
        "operationId": "Package_Search",
        "parameters": [
          {
            "description": "part of package name",
            "in": "query",
            "name": "searchText",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 1
          },
          {
            "description": "primary key of TL gym entity",
            "in": "query",
            "name": "gymId",
            "schema": {
              "default": -1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 2
          },
          {
            "description": "filter package type.!-- default is 'all'",
            "in": "query",
            "name": "type",
            "schema": {
              "default": "all",
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          },
          {
            "description": "order by column.!-- invalid column will give internal server error",
            "in": "query",
            "name": "orderBy",
            "schema": {
              "default": "1",
              "nullable": true,
              "type": "string"
            },
            "x-position": 4
          },
          {
            "description": "number of recode in result and default is 100. use negative numbers to order by desc",
            "in": "query",
            "name": "limit",
            "schema": {
              "default": 100,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 5
          },
          {
            "description": "number of recodes to skip",
            "in": "query",
            "name": "offset",
            "schema": {
              "default": 0,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 6
          },
          {
            "description": "active status active : 1, inactive : 2, all 3, deafult : 1",
            "in": "query",
            "name": "activeStatus",
            "schema": {
              "default": 1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 7
          },
          {
            "description": "Packge Category Id",
            "in": "query",
            "name": "categoryId",
            "schema": {
              "default": -1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 8
          },
          {
            "description": "Start price of the price Range",
            "in": "query",
            "name": "startpPrice",
            "schema": {
              "default": 0,
              "format": "decimal",
              "type": "number"
            },
            "x-position": 9
          },
          {
            "description": "End Price of the price Range",
            "in": "query",
            "name": "endPrice",
            "schema": {
              "default": 9999999,
              "format": "decimal",
              "type": "number"
            },
            "x-position": 10
          },
          {
            "description": "1 : MRM, 2 : Mobile ",
            "in": "query",
            "name": "requestSource",
            "schema": {
              "default": 1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 11
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/DefaultResponseDTOOfPackageSearchDTO"
                  },
                  "type": "array"
                }
              }
            },
            "description": "basic information of package entity"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfListOfPackageSearchDTO"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Search packages\n            ",
        "tags": [
          "Package"
        ]
      }
    },
    "/api/Package/UpdateStatus": {
      "put": {
        "operationId": "Package_UpdateStatus",
        "parameters": [
          {
            "description": "package Id",
            "in": "query",
            "name": "packageId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          },
          {
            "description": "status : 1 activate, 2 : deactivate",
            "in": "query",
            "name": "status",
            "schema": {
              "default": 1,
              "format": "int32",
              "type": "integer"
            },
            "x-position": 2
          },
          {
            "description": "Status updated User",
            "in": "query",
            "name": "userName",
            "schema": {
              "default": "system",
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfBoolean"
                }
              }
            },
            "description": "status 1 : success, status 404 : package not found, status -2: package already in use "
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfString"
                }
              }
            },
            "description": ""
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultResponseDTOOfString"
                }
              }
            },
            "description": ""
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiException"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Status update of existing package ",
        "tags": [
          "Package"
        ]
      }
    },
    "/api/Status": {
      "get": {
        "operationId": "Status_Get",
        "parameters": [
          {
            "description": "respose of POST request",
            "in": "query",
            "name": "messageId",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MessageStatus"
                }
              }
            },
            "description": "same response result will retrun with different status and messageText"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            },
            "description": ""
          }
        },
        "summary": "Get the current status of message",
        "tags": [
          "Status"
        ]
      }
    },
    "/api/Test": {
      "get": {
        "operationId": "Test_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TestDTO"
                }
              }
            },
            "description": "API Response with test objects as a list."
          }
        },
        "summary": "Get the all Test objects.\n            ",
        "tags": [
          "Test"
        ]
      }
    },
    "/api/User": {
      "get": {
        "operationId": "User_Get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDTO"
                }
              }
            },
            "description": "API Response with User entity"
          }
        },
        "summary": "Get all Users detail\nThis will return all properties related to User entity\n            ",
        "tags": [
          "User"
        ]
      }
    },
    "/api/User/registerUser": {
      "post": {
        "operationId": "User_registerUser",
        "parameters": [
          {
            "description": "Indentity number(primary key) for user object. Generated in DB table when inserting a record.\n            ",
            "in": "query",
            "name": "UserId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          },
          {
            "description": "Account number of the user.It can be any stakeholder of the application.even can be a gym.\n            ",
            "in": "query",
            "name": "AccountNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 2
          },
          {
            "description": "If this user is a gym, then the gym number.\n            ",
            "in": "query",
            "name": "GymNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          },
          {
            "description": "Entity number that make a relationship with BOX API DB.\n            ",
            "in": "query",
            "name": "ExternalEntityNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 4
          },
          {
            "description": "Name of the user.\n            ",
            "in": "query",
            "name": "Name",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 5
          },
          {
            "description": "Unique number maintain by application to idenify user.\n            ",
            "in": "query",
            "name": "Number",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 6
          },
          {
            "description": "If Someone introduced this user to the system, then that user's UserId.\n            ",
            "in": "query",
            "name": "IntroduceBy",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 7
          },
          {
            "description": "Gaurdian of the this user if he/she is under 18 years old.\n            ",
            "in": "query",
            "name": "Guardian",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 8
          },
          {
            "description": "Type of the user.\n            ",
            "in": "query",
            "name": "TypeId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 9
          }
        ],
        "responses": {
          "200": {
            "description": "API Response"
          },
          "404": {
            "description": ""
          }
        },
        "summary": "Register a new User\n            ",
        "tags": [
          "User"
        ]
      }
    },
    "/api/User/updateuser": {
      "put": {
        "operationId": "User_updateUser",
        "parameters": [
          {
            "description": "Indentity number(primary key) for user object. Generated in DB table when inserting a record.\n            ",
            "in": "query",
            "name": "UserId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 1
          },
          {
            "description": "Account number of the user.It can be any stakeholder of the application.even can be a gym.\n            ",
            "in": "query",
            "name": "AccountNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 2
          },
          {
            "description": "If this user is a gym, then the gym number.\n            ",
            "in": "query",
            "name": "GymNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 3
          },
          {
            "description": "Entity number that make a relationship with BOX API DB.\n            ",
            "in": "query",
            "name": "ExternalEntityNumber",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 4
          },
          {
            "description": "Name of the user.\n            ",
            "in": "query",
            "name": "Name",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 5
          },
          {
            "description": "Unique number maintain by application to idenify user.\n            ",
            "in": "query",
            "name": "Number",
            "schema": {
              "nullable": true,
              "type": "string"
            },
            "x-position": 6
          },
          {
            "description": "If Someone introduced this user to the system, then that user's UserId.\n            ",
            "in": "query",
            "name": "IntroduceBy",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 7
          },
          {
            "description": "Gaurdian of the this user if he/she is under 18 years old.\n            ",
            "in": "query",
            "name": "Guardian",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 8
          },
          {
            "description": "Type of the user.\n            ",
            "in": "query",
            "name": "TypeId",
            "schema": {
              "format": "int32",
              "type": "integer"
            },
            "x-position": 9
          }
        ],
        "responses": {
          "200": {
            "description": "API Response true or false"
          },
          "404": {
            "description": ""
          }
        },
        "summary": "Update an exsisting User\n            ",
        "tags": [
          "User"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "ApiException": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Exception"
          },
          {
            "additionalProperties": false,
            "properties": {
              "customError": {
                "nullable": true
              },
              "errors": {
                "items": {
                  "$ref": "#/components/schemas/ValidationError"
                },
                "nullable": true,
                "type": "array"
              },
              "isCustomErrorObject": {
                "type": "boolean"
              },
              "isModelValidatonError": {
                "type": "boolean"
              },
              "referenceDocumentLink": {
                "nullable": true,
                "type": "string"
              },
              "referenceErrorCode": {
                "nullable": true,
                "type": "string"
              },
              "statusCode": {
                "format": "int32",
                "type": "integer"
              }
            },
            "type": "object"
          }
        ]
      },
      "ApiResponse": {
        "additionalProperties": false,
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true
          },
          "statusCode": {
            "format": "int32",
            "type": "integer"
          },
          "version": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "ArticleDTO": {
        "additionalProperties": false,
        "description": "The ArticleDTO Class.\nContains relevant fields of Article DTO by masking actual Article entity's fields in application.\n            ",
        "properties": {
          "activeStatus": {
            "description": "Active Status ",
            "type": "boolean"
          },
          "applyForAllGyms": {
            "type": "boolean"
          },
          "articleId": {
            "format": "int32",
            "type": "integer"
          },
          "availableGyms": {
            "items": {
              "$ref": "#/components/schemas/GymDTO"
            },
            "type": "array"
          },
          "availableQty": {
            "description": "Default AvailableQty",
            "format": "decimal",
            "type": "number"
          },
          "barcode": {
            "maxLength": 100,
            "minLength": 0,
            "nullable": true,
            "type": "string"
          },
          "createdDate": {
            "format": "date-time",
            "type": "string"
          },
          "createdUser": {
            "nullable": true,
            "type": "string"
          },
          "cronExpression": {
            "description": "Access Schedule CRON Expression ",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "nullable": true,
            "type": "string"
          },
          "discount": {
            "format": "decimal",
            "pattern": "^\\d+.\\d{0,2}$|^\\d",
            "type": "number"
          },
          "employeeDiscount": {
            "description": "Default EmployeeDiscount",
            "format": "decimal",
            "type": "number"
          },
          "employeePrice": {
            "description": "Default EmployeePrice",
            "format": "decimal",
            "type": "number"
          },
          "gymArticles": {
            "description": "Gym Customizations ",
            "items": {
              "$ref": "#/components/schemas/GymArticleDetailsDTO"
            },
            "nullable": true,
            "type": "array"
          },
          "isAddOn": {
            "type": "boolean"
          },
          "isInventoryItem": {
            "description": "Default IsInventoryItem of the Article ",
            "type": "boolean"
          },
          "isObsolete": {
            "description": "Default IsObsolete of the Article ",
            "type": "boolean"
          },
          "measureUnit": {
            "minLength": 1,
            "type": "string"
          },
          "modifiedDate": {
            "format": "date-time",
            "type": "string"
          },
          "modifiedUser": {
            "nullable": true,
            "type": "string"
          },
          "name": {
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "number": {
            "format": "int32",
            "type": "integer"
          },
          "price": {
            "format": "decimal",
            "pattern": "^\\d+.\\d{0,2}$|^\\d",
            "type": "number"
          },
          "reorderLevel": {
            "description": "Deafault ReorderLevel",
            "format": "decimal",
            "type": "number"
          },
          "revenueAccountId": {
            "description": "Default Revenue account",
            "format": "int32",
            "type": "integer"
          },
          "sellingPrice": {
            "description": "Default SellingPrice",
            "format": "decimal",
            "type": "number"
          },
          "tags": {
            "maxLength": 200,
            "minLength": 0,
            "nullable": true,
            "type": "string"
          },
          "type": {
            "minLength": 1,
            "pattern": "item|service|access",
            "type": "string"
          },
          "vat": {
            "format": "decimal",
            "pattern": "^\\d+.\\d{0,2}$|^\\d",
            "type": "number"
          },
          "vatApplicable": {
            "description": "VAT Applicable ",
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "type",
          "price",
          "measureUnit",
          "availableGyms"
        ],
        "type": "object"
      },
      "ArticleSearchDTO": {
        "additionalProperties": false,
        "description": "The ArticleSearchDTO Class.\nContains relevant fields of ArticleSearch DTO by masking actual Article entity's fields in application.\n            ",
        "properties": {
          "activeStatus": {
            "description": "Active Status ",
            "type": "boolean"
          },
          "applyForAllGyms": {
            "type": "boolean"
          },
          "articleId": {
            "format": "int32",
            "type": "integer"
          },
          "createdDate": {
            "format": "date-time",
            "type": "string"
          },
          "createdUser": {
            "nullable": true,
            "type": "string"
          },
          "description": {
            "nullable": true,
            "type": "string"
          },
          "measureUnit": {
            "description": "MeasureUnit ",
            "nullable": true,
            "type": "string"
          },
          "modifiedDate": {
            "format": "date-time",
            "type": "string"
          },
          "modifiedUser": {
            "nullable": true,
            "type": "string"
          },
          "name": {
            "nullable": true,
            "type": "string"
          },
          "number": {
            "format": "int32",
            "type": "integer"
          },
          "price": {
            "format": "decimal",
            "type": "number"
          },
          "sellingPrice": {
            "description": "Actual Selling price of the article ",
            "format": "decimal",
            "type": "number"
          },
          "tags": {
            "nullable": true,
            "type": "string"
          },
          "totalCount": {
            "description": "total number of recode for particular search ",
            "format": "int32",
            "type": "integer"
          },
          "type": {
            "description": "article type",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfArticleDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ArticleDTO"
              }
            ]
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfBoolean": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfGymDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/GymDTO"
              }
            ]
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfInteger": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfListOfArticleSearchDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "items": {
              "$ref": "#/components/schemas/ArticleSearchDTO"
            },
            "nullable": true,
            "type": "array"
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfListOfPackageSearchDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "items": {
              "$ref": "#/components/schemas/PackageSearchDTO"
            },
            "nullable": true,
            "type": "array"
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfPackageDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PackageDTO"
              }
            ]
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfPackageSearchDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PackageSearchDTO"
              }
            ]
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfStatusDTO": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/StatusDTO"
              }
            ]
          }
        },
        "type": "object"
      },
      "DefaultResponseDTOOfString": {
        "additionalProperties": false,
        "description": "The DefaultResponseDTO Class.\nContains fields of DefaultResponse DTO in application.\n            ",
        "properties": {
          "isError": {
            "type": "boolean"
          },
          "message": {
            "nullable": true,
            "type": "string"
          },
          "responseException": {
            "nullable": true
          },
          "result": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "Exception": {
        "additionalProperties": false,
        "properties": {
          "InnerException": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Exception"
              }
            ]
          },
          "Message": {
            "type": "string"
          },
          "Source": {
            "nullable": true,
            "type": "string"
          },
          "StackTrace": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "GymArticleDetailsDTO": {
        "additionalProperties": false,
        "description": "The GymArticleDetailsDTO Class.\nContains fields of GymArticleDetails DTO in application.\n            ",
        "properties": {
          "articleId": {
            "format": "int32",
            "type": "integer"
          },
          "availableQty": {
            "format": "decimal",
            "type": "number"
          },
          "createdUser": {
            "description": "Created User ",
            "nullable": true,
            "type": "string"
          },
          "employeeDiscount": {
            "format": "decimal",
            "type": "number"
          },
          "employeePrice": {
            "format": "decimal",
            "type": "number"
          },
          "gymId": {
            "description": "Gym Id where article is related ",
            "format": "int32",
            "type": "integer"
          },
          "gymIdList": {
            "description": "GymId - Gym Id string with comma separated GymIds ",
            "nullable": true,
            "type": "string"
          },
          "gymName": {
            "description": "Gym Name",
            "nullable": true,
            "type": "string"
          },
          "id": {
            "format": "int32",
            "type": "integer"
          },
          "isDefault": {
            "description": "Set as the default values for the article ",
            "type": "boolean"
          },
          "isInventoryItem": {
            "type": "boolean"
          },
          "isObsolete": {
            "type": "boolean"
          },
          "modifiedUser": {
            "description": "Modified user",
            "nullable": true,
            "type": "string"
          },
          "reorderLevel": {
            "format": "decimal",
            "type": "number"
          },
          "revenueAccountId": {
            "description": "Revenue account Id",
            "format": "int32",
            "type": "integer"
          },
          "sellingPrice": {
            "format": "decimal",
            "type": "number"
          }
        },
        "type": "object"
      },
      "GymDTO": {
        "additionalProperties": false,
        "description": "The GymDTO Class.\nContains relevant fields of Gym DTO by masking actual Gym entity's fields in application.\n            ",
        "properties": {
          "externalGymNumber": {
            "format": "int32",
            "type": "integer"
          },
          "gymId": {
            "format": "int32",
            "type": "integer"
          },
          "gymName": {
            "nullable": true,
            "type": "string"
          },
          "location": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "LoginDTO": {
        "additionalProperties": false,
        "description": "The LoginDTO Class.\nContains relevant fields of Login DTO.\n            ",
        "properties": {
          "password": {
            "nullable": true,
            "type": "string"
          },
          "remember": {
            "type": "boolean"
          },
          "username": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "MeasureUnitDTO": {
        "additionalProperties": false,
        "description": "Mesure unit to represent article mesure unit ",
        "properties": {
          "id": {
            "description": "Id of the table",
            "format": "int32",
            "type": "integer"
          },
          "name": {
            "description": "Mesure Unit Type",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "description": "Type of the article used with (all, service, item)",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "MemberDTO": {
        "additionalProperties": false,
        "description": "The MemeberDTO Class.\nContains relevant fields of Member DTO by masking actual Member entity's fields in application.\n            ",
        "properties": {
          "name": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "MessageStatus": {
        "additionalProperties": false,
        "properties": {
          "messageId": {
            "nullable": true,
            "type": "string"
          },
          "referenceId": {
            "format": "int32",
            "type": "integer"
          },
          "source": {
            "nullable": true
          },
          "statusId": {
            "format": "int32",
            "type": "integer"
          },
          "statusText": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "PackageDTO": {
        "additionalProperties": false,
        "description": "The PackageDTO Class.\nContains relevant fields of Package DTO by masking actual Package entity's fields in application.\n            ",
        "properties": {
          "addOns": {
            "description": "Extra articles list added to the given package.\n            ",
            "items": {
              "$ref": "#/components/schemas/PackageItemDTO"
            },
            "nullable": true,
            "type": "array"
          },
          "addonFee": {
            "description": "sum of addon fees.\nincoming values for this filed will ignore.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "applyForAllGyms": {
            "description": "Boolean value to indicate wheather package is available in all the gyms.\n            ",
            "type": "boolean"
          },
          "availableGyms": {
            "description": "Gyms list where this package is available.\n            ",
            "items": {
              "$ref": "#/components/schemas/GymDTO"
            },
            "nullable": true,
            "type": "array"
          },
          "bindingPeriod": {
            "description": "Range of period a member is bound to the contract if he/she choose this package.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "createdDate": {
            "description": "Package created DateTime.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "createdUser": {
            "description": "Package created user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "description": "Common descriptions about package.If there are more instructions \n             can be stored as comma separated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "endDate": {
            "description": "End date of the package.After that package is not valid for use.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "expireInMonths": {
            "description": "No of months the fixed package is valid for sale\n            ",
            "format": "int32",
            "type": "integer"
          },
          "features": {
            "description": "What are the facilities, features available for package.ex:- wifi,\nACm etc.Can be stored as comma seperated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "freeMonths": {
            "description": "No of months gym member can come without payments.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "instructionsToGymUsers": {
            "description": "Instruction to the gym members relevant to the package.\n             If there are more instructions can be stored as comma seperated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "instructionsToWebUsers": {
            "description": "Instruction to the MRM members relevant to the package.\n             If there are more instructions can be stored as comma seperated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "isActive": {
            "description": "Boolean value to indicate this package is still active or not.\n            ",
            "type": "boolean"
          },
          "isAtg": {
            "description": "Boolean value to indicate ATG transaction from bank is applicable or not.\n            ",
            "type": "boolean"
          },
          "isAutoRenew": {
            "description": "Boolean value to indicate the contract will auto renew after expiration \n             if this package would be chosen.\n            ",
            "type": "boolean"
          },
          "isFirstMonthFree": {
            "description": "Boolean value to indicate if the first month charges is free.\n            ",
            "type": "boolean"
          },
          "isRegistrationFee": {
            "description": "Boolean value to indicate this package has registration fee or not.\n            ",
            "type": "boolean"
          },
          "isRestAmount": {
            "description": "Boolean value to indicate rest amount is applicable or not.\n            ",
            "type": "boolean"
          },
          "isShownInMobile": {
            "description": "Boolean value to indicate package is visible in Mobile App or not.\n            ",
            "type": "boolean"
          },
          "isSponsorPackage": {
            "description": "Boolean value to indicate package can be sponsored or not by other party.\n            ",
            "type": "boolean"
          },
          "maximumGiveAwayRestAmount": {
            "description": "If a member join the gym middle of a month via this package, \n             what is the maximum amount of price can be neglected from payment from the member.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "memberCanAddAddOns": {
            "description": "Boolean value to indicate member can add extra addons he wish if he choose this package.\n            ",
            "type": "boolean"
          },
          "memberCanLeaveWithinFreePeriod": {
            "description": "Boolean value to indicate if member can leave from contract within \n             free period if he/she choose this package.\n            ",
            "type": "boolean"
          },
          "memberCanRemoveAddOns": {
            "description": "Boolean value to indicate member can remove already added addons if he choose this package.\n            ",
            "type": "boolean"
          },
          "modifiedDate": {
            "description": "Package last modified DateTime.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "modifiedUser": {
            "description": "Package last modified user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "monthlyFee": {
            "description": "Monthly installment fee if package is not fixed visit.\naddition of the servicefee and addon fees divided by binding period.\n             read only\n            ",
            "format": "decimal",
            "type": "number"
          },
          "nextPackageNumber": {
            "description": "Next Package the contract continue after the binding period of this package.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "numberOfInstallments": {
            "description": "Maximum Number of installment a member can divide the package price/cost to pay.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "numberOfVisits": {
            "description": "If package is fixed visit type, then how many visits are available for this package.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "packageId": {
            "format": "int32",
            "type": "integer"
          },
          "packageName": {
            "minLength": 1,
            "type": "string"
          },
          "packageNumber": {
            "nullable": true,
            "type": "string"
          },
          "packageType": {
            "description": "Package type can be either fixed visit or unlimited.\n            ",
            "minLength": 1,
            "pattern": "fixedvisit|unlimited",
            "type": "string"
          },
          "perVisitPrice": {
            "description": "Cost/Price of the single visit to gym.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "registrationFee": {
            "description": "Registartion fee for the package at a gym.\n             read only\n            ",
            "format": "decimal",
            "type": "number"
          },
          "serviceFee": {
            "description": "total Service charge of the package for entire period.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "shownInWeb": {
            "description": "Boolean value to show this package in MRM system or not.\n            ",
            "type": "boolean"
          },
          "startDate": {
            "description": "Start date of the package.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "tags": {
            "description": "Comma separated string values in case of need of maintain some labels kind of \n             stuff relevant to the package.\n            ",
            "nullable": true,
            "type": "string"
          },
          "totalPrice": {
            "description": "total price for the package including Addon fees, service fee and registration fee.\nincoming values for this field will ignore.\n            ",
            "format": "decimal",
            "type": "number"
          }
        },
        "required": [
          "packageName",
          "registrationFee",
          "packageType",
          "serviceFee"
        ],
        "type": "object"
      },
      "PackageItemDTO": {
        "additionalProperties": false,
        "description": "The PackageItemDTO Class.\nContains relevant fields of PackageItem DTO by masking actual Package entity's fields in application.\n            ",
        "properties": {
          "articleId": {
            "description": "Refer to ArticleId in Article table in DB.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "articleName": {
            "description": "Name of the article(Addon) in a particular package.\n             read only\n            ",
            "nullable": true,
            "type": "string"
          },
          "articleNumber": {
            "description": "Number assigned the article(Addon) in a particular package.\n             read only\n            ",
            "format": "int32",
            "type": "integer"
          },
          "articlePrice": {
            "description": "Price of the article determined from that package.\nPrice of a same article can be varied from package to package.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "endOrder": {
            "description": "Number of the installment this article is available to.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "isIncludeServiceInCharge": {
            "description": "Is Included in service charge ",
            "type": "boolean"
          },
          "measureUnit": {
            "nullable": true,
            "type": "string"
          },
          "numberOfItems": {
            "description": "How many article(Addon) is available for that package from that type.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "startOrder": {
            "description": "Number of the installment this article is available from.\n            ",
            "format": "int32",
            "type": "integer"
          }
        },
        "required": [
          "articleId"
        ],
        "type": "object"
      },
      "PackageSearchDTO": {
        "additionalProperties": false,
        "description": "The PackageSearchDTO Class.\nContains relevant fields of PackageSearch DTO by masking actual Package entity's fields in application.\n               ",
        "properties": {
          "activeStatus": {
            "description": "Active Status ",
            "type": "boolean"
          },
          "addonFee": {
            "description": "sum of addon fees.\nincoming values for this filed will ignore.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "applyForAllGyms": {
            "description": "Boolean value to indicate wheather package is available in all the gyms.\n            ",
            "type": "boolean"
          },
          "bindingPeriod": {
            "description": "Range of period a member is bound to the contract if he/she choose this package.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "createdDate": {
            "description": "Package created DateTime.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "createdUser": {
            "description": "Package created user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "description": "Common descriptions about package.If there are more instructions can be stored as comma separated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "features": {
            "description": "What are the facilities, features available for package.ex:- wifi, ACm etc.Can be stored as comma seperated values.\n            ",
            "nullable": true,
            "type": "string"
          },
          "freeMonths": {
            "description": "No of months gym member can come without payments.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "memberCanRemoveAddOns": {
            "description": "Boolean value to indicate member can remove already added addons if he choose this package.\n            ",
            "type": "boolean"
          },
          "modifiedDate": {
            "description": "Package last modified DateTime.\n            ",
            "format": "date-time",
            "type": "string"
          },
          "modifiedUser": {
            "description": "Package last modified user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "monthlyFee": {
            "description": "Monthly installment fee if package is not fixed visit.\naddition of the servicefee and addon fees divided by binding period.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "numberOfVisits": {
            "description": "No of visits for fixed package ",
            "format": "int32",
            "type": "integer"
          },
          "packageId": {
            "format": "int32",
            "type": "integer"
          },
          "packageName": {
            "nullable": true,
            "type": "string"
          },
          "packageNumber": {
            "format": "int32",
            "type": "integer"
          },
          "packageType": {
            "description": "Package type can be either fixed visit or unlimited.\n            ",
            "nullable": true,
            "type": "string"
          },
          "registrationFee": {
            "description": "Registartion fee for the package at a gym.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "serviceFee": {
            "description": "total Service charge of the package for entire period.\n            ",
            "format": "decimal",
            "type": "number"
          },
          "tags": {
            "description": "Comma separated string values in case of need of maintain some labels kind of stuff relevant to the package.\n            ",
            "nullable": true,
            "type": "string"
          },
          "totalCount": {
            "description": "total number of recode for particular search ",
            "format": "int32",
            "type": "integer"
          },
          "totalPrice": {
            "description": "total price for the package including Addon fees, service fee and registration fee.\nincoming values for this field will ignore.\n            ",
            "format": "decimal",
            "type": "number"
          }
        },
        "type": "object"
      },
      "ProblemDetails": {
        "additionalProperties": false,
        "properties": {
          "detail": {
            "nullable": true,
            "type": "string"
          },
          "extensions": {
            "additionalProperties": {},
            "nullable": true,
            "type": "object"
          },
          "instance": {
            "nullable": true,
            "type": "string"
          },
          "status": {
            "format": "int32",
            "nullable": true,
            "type": "integer"
          },
          "title": {
            "nullable": true,
            "type": "string"
          },
          "type": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "StatusDTO": {
        "additionalProperties": false,
        "description": "Imideate response for long running api call.\n            ",
        "properties": {
          "messageId": {
            "description": "Reference id for status endpoint\n            ",
            "nullable": true,
            "type": "string"
          },
          "statusText": {
            "description": "Status of API Call\n            ",
            "nullable": true,
            "type": "string"
          },
          "url": {
            "description": "Relative url for stauts check\n            ",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "TestDTO": {
        "additionalProperties": false,
        "description": "The TestDTO Class.\nContains relevant fields of Test DTO by masking actual Test entity's fields in application.\n            ",
        "properties": {
          "id": {
            "description": "Id of the Test object\n            ",
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "UserDTO": {
        "additionalProperties": false,
        "description": "The UserDTO Class.\nContains relevant fields of User DTO by masking actual User entity's fields in application.\n            ",
        "properties": {
          "accountNumber": {
            "description": "Account number of the user.It can be any stakeholder of the application.even can be a gym.\n            ",
            "nullable": true,
            "type": "string"
          },
          "externalEntityNumber": {
            "description": "Entity number that make a relationship with BOX API DB.\n            ",
            "nullable": true,
            "type": "string"
          },
          "guardian": {
            "description": "Gaurdian of the this user if he/she is under 18 years old.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "gymNumber": {
            "description": "If this user is a gym, then the gym number.\n            ",
            "nullable": true,
            "type": "string"
          },
          "introduceBy": {
            "description": "If Someone introduced this user to the system, then that user's UserId.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "name": {
            "description": "Name of the user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "number": {
            "description": "Unique number maintain by application to idenify user.\n            ",
            "nullable": true,
            "type": "string"
          },
          "typeId": {
            "description": "Type of the user.\n            ",
            "format": "int32",
            "type": "integer"
          },
          "userId": {
            "description": "Indentity number(primary key) for user object. Generated in DB table when inserting a record.\n            ",
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "ValidationError": {
        "additionalProperties": false,
        "properties": {
          "field": {
            "nullable": true,
            "type": "string"
          },
          "message": {
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "securitySchemes": {
      "apikey": {
        "in": "header",
        "name": "Ocp-Apim-Subscription-Key",
        "type": "apiKey"
      },
      "bearer": {
        "description": "auth0 authentication",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://tldev.eu.auth0.com/authorize",
            "scopes": {
              "read:tl_articles": "read:tl_articles",
              "read:tl_packages": "read:tl_packages"
            },
            "tokenUrl": "https://tldev.eu.auth0.com/oauth/token"
          }
        },
        "type": "oauth2"
      }
    }
  },
  "x-generator": "NSwag v13.4.2.0 (NJsonSchema v10.1.11.0 (Newtonsoft.Json v12.0.0.0))"
}