{
  "openapi": "3.0.0",
  "info": {
    "title": "LoopBack Application",
    "version": "1.0.0"
  },
  "paths": {
    "/synchronization/all/dishes": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "add",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.add"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "dishs": {
                    "type": "array"
                  },
                  "setMeas": {
                    "type": "array"
                  },
                  "packageMeal": {
                    "type": "array"
                  },
                  "condiment": {
                    "type": "array"
                  },
                  "condimentGroup": {
                    "type": "array"
                  },
                  "menus": {
                    "type": "array"
                  },
                  "params": {
                    "type": "object",
                    "properties": {
                      "forceUpdate": {
                        "type": "boolean"
                      }
                    }
                  },
                  "token": {
                    "type": "string"
                  },
                  "accountId": {
                    "type": "string"
                  },
                  "locationId": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token",
                  "accountId",
                  "locationId"
                ]
              }
            }
          }
        },
        "operationId": "SynchronizationController.add"
      }
    },
    "/uploading/all/dishes": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "uploading",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.uploading"
          }
        },
        "operationId": "SynchronizationController.uploading"
      }
    },
    "/v1/deliverect/accounts": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "getAccounts",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.getAccounts"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token"
                ]
              }
            }
          }
        },
        "operationId": "SynchronizationController.getAccounts"
      }
    },
    "/v1/deliverect/allChannels": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "GetDeliverectChannels",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.GetDeliverectChannels"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token"
                ]
              }
            }
          }
        },
        "operationId": "SynchronizationController.GetDeliverectChannels"
      }
    },
    "/v1/deliverect/locations": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "getLocations",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.getLocations"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string"
                  },
                  "where": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token",
                  "where"
                ]
              }
            }
          }
        },
        "operationId": "SynchronizationController.getLocations"
      }
    },
    "/v1/deliverect/order/update": {
      "post": {
        "x-controller-name": "DeliverectOrderController",
        "x-operation-name": "updateOrder",
        "tags": [
          "DeliverectOrderController"
        ],
        "responses": {
          "200": {
            "description": "Return value of DeliverectOrderController.updateOrder"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string"
                  },
                  "orderId": {
                    "type": "string"
                  },
                  "receiptId": {
                    "type": "string"
                  },
                  "status": {
                    "type": "number"
                  },
                  "timeStamp": {
                    "type": "string"
                  },
                  "reason": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token",
                  "orderId",
                  "status"
                ]
              }
            }
          }
        },
        "operationId": "DeliverectOrderController.updateOrder"
      }
    },
    "/v1/deliverect/products": {
      "post": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "GetDeliverectDishs",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.GetDeliverectDishs"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string"
                  },
                  "where": {
                    "type": "string"
                  },
                  "accountId": {
                    "type": "string"
                  },
                  "page": {
                    "type": "number"
                  },
                  "max_results": {
                    "type": "number"
                  },
                  "sort": {
                    "type": "string"
                  }
                },
                "additionalProperties": false,
                "required": [
                  "token"
                ]
              }
            }
          }
        },
        "operationId": "SynchronizationController.GetDeliverectDishs"
      }
    },
    "/v1/deliverect/token": {
      "get": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "GetDeliverectToken",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.GetDeliverectToken"
          }
        },
        "parameters": [
          {
            "in": "query",
            "name": "client_id",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "client_secret",
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "SynchronizationController.GetDeliverectToken"
      }
    },
    "/v1/orders": {
      "post": {
        "x-controller-name": "DeliverectOrderController",
        "x-operation-name": "posOrder",
        "tags": [
          "DeliverectOrderController"
        ],
        "responses": {
          "200": {
            "description": "Return value of DeliverectOrderController.posOrder"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "DeliverectOrderController.posOrder"
      }
    },
    "/v1/register": {
      "post": {
        "x-controller-name": "DeliverectOrderController",
        "x-operation-name": "posRegister",
        "tags": [
          "DeliverectOrderController"
        ],
        "responses": {
          "200": {
            "description": "Return value of DeliverectOrderController.posRegister"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountId": {
                    "type": "string"
                  },
                  "locationId": {
                    "type": "string"
                  },
                  "externalLocationId": {
                    "type": "string"
                  },
                  "locationName": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "operationId": "DeliverectOrderController.posRegister"
      }
    },
    "/v1/{string_id}/products": {
      "get": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "OD",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.OD"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "string_id",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "in": "query",
            "name": "forceUpdate",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "operationId": "SynchronizationController.OD"
      }
    },
    "/v2/orders": {
      "post": {
        "x-controller-name": "DeliverectOrderController",
        "x-operation-name": "shellPosOrder",
        "tags": [
          "DeliverectOrderController"
        ],
        "responses": {
          "200": {
            "description": "Return value of DeliverectOrderController.shellPosOrder"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "operationId": "DeliverectOrderController.shellPosOrder"
      }
    },
    "/v2/register": {
      "post": {
        "x-controller-name": "DeliverectOrderController",
        "x-operation-name": "shellPosRegister",
        "tags": [
          "DeliverectOrderController"
        ],
        "responses": {
          "200": {
            "description": "Return value of DeliverectOrderController.shellPosRegister"
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountId": {
                    "type": "string"
                  },
                  "locationId": {
                    "type": "string"
                  },
                  "externalLocationId": {
                    "type": "string"
                  },
                  "locationName": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "operationId": "DeliverectOrderController.shellPosRegister"
      }
    },
    "/v2/{string_id}/products": {
      "get": {
        "x-controller-name": "SynchronizationController",
        "x-operation-name": "SW",
        "tags": [
          "SynchronizationController"
        ],
        "responses": {
          "200": {
            "description": "Return value of SynchronizationController.SW"
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "string_id",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "in": "query",
            "name": "forceUpdate",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "operationId": "SynchronizationController.SW"
      }
    }
  },
  "servers": [
    {
      "url": "https://transfercenter-dev-api.evophotic.com"
    }
  ],
  "components": {
    "schemas": {
      "Deliverect": {
        "title": "Deliverect",
        "properties": {
          "_id": {
            "type": "string"
          },
          "accountId": {
            "type": "string"
          },
          "locationId": {
            "type": "string"
          },
          "externalLocationId": {
            "type": "string"
          },
          "locationName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "OrderDeliverect": {}
    }
  }
}