{
  "id": "@itentialopensource/adapter-eai",
  "type": "Adapter",
  "export": "EAI",
  "displayName": "EAI",
  "title": "EAI",
  "src": "adapter.js",
  "roles": [
    "admin"
  ],
  "methods": [
    {
      "name": "iapUpdateAdapterConfiguration",
      "summary": "Updates the adapter configuration",
      "description": "Updates the adapter configuration file with the provided changes",
      "input": [
        {
          "name": "configFile",
          "type": "string",
          "info": "The name of the file to change",
          "required": true,
          "schema": {
            "title": "configFile",
            "type": "string"
          }
        },
        {
          "name": "changes",
          "type": "object",
          "info": "JSON object containing the configuration changes",
          "required": true,
          "schema": {
            "title": "changes",
            "type": "object"
          }
        },
        {
          "name": "entity",
          "type": "string",
          "info": "The entity in which the changes are being made",
          "required": false,
          "schema": {
            "title": "entity",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "string",
          "info": "The type of file to change - action, schema, or mock",
          "required": false,
          "schema": {
            "title": "type",
            "type": "string"
          }
        },
        {
          "name": "action",
          "type": "string",
          "info": "The action to be changed",
          "required": false,
          "schema": {
            "title": "action",
            "type": "string"
          }
        },
        {
          "name" : "replace",
          "type": "boolean",
          "info": "True to replace entire mock data, false to merge/append",
          "required": false,
          "schema": {
            "title": "replace",
            "type" : "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUpdateAdapterConfiguration"
      },
      "task": true
    },
    {
      "name": "iapSuspendAdapter",
      "summary": "Suspends the adapter",
      "description": "Suspends the adapter",
      "input": [
        {
          "name": "mode",
          "type": "enum",
          "enumerals": [
            "pause",
            "error"
          ],
          "info": "How incoming requests are handled. Defaults to 'pause'",
          "description": "How incoming requests are handled. Defaults to 'pause'",
          "schema": {
            "title": "mode",
            "type": "string"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapSuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapUnsuspendAdapter",
      "summary": "Unsuspends the adapter",
      "description": "Unsuspends the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUnsuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterQueue",
      "summary": "Return the requests that are waiting in the queue if throttling is enabled",
      "description": "Return the requests that are waiting in the queue if throttling is enabled",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter queue",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetAdapterQueue"
      },
      "task": true
    },
    {
      "name": "iapFindAdapterPath",
      "summary": "Provides the ability to see if a particular API path is supported by the adapter",
      "description": "Provides the ability to see if a particular API path is supported by the adapter",
      "input": [
        {
          "name": "apiPath",
          "type": "string",
          "info": "The API Path you want to check - make sure to not include base path and version",
          "description": "The API Path you want to check - make sure to not include base path and version",
          "schema": {
            "title": "apiPath",
            "type": "string"
          },
          "required": true
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapFindAdapterPath"
      },
      "task": true
    },
    {
      "name": "iapTroubleshootAdapter",
      "summary": "Runs troubleshoot script for adapter",
      "description": "Runs troubleshoot script for adapter",
      "input": [
        {
          "name": "props",
          "type": "object",
          "info": "Object containing configuration, healthcheck and auth properties {'connProps':{'host': 'api.service.com', 'base_path': '/', 'protocol': 'http', 'port': 443, 'version': 'v1'},'healthCheckEndpoint': '/healthcheck', 'auth': {'auth_method': 'no authentication', 'username': 'username', 'password': 'password'}}",
          "required": true,
          "schema": {
            "title": "props",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapTroubleshootAdapter"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterHealthcheck",
      "summary": "Runs healthcheck script for adapter",
      "description": "Runs healthcheck script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "Whether healthcheck passed or failed",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterHealthcheck"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterConnectivity",
      "summary": "Runs connectivity check script for adapter",
      "description": "Runs connectivity check script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterConnectivity"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterBasicGet",
      "summary": "Runs basicGet script for adapter",
      "description": "Runs basicGet script for adapter",
      "input": [
        {
          "name": "maxCalls",
          "required": false,
          "type": "number", 
          "info": "How many GET endpoints to test (defaults to 5)",
          "schema": {
            "title": "maxCalls",
            "type": "number", 
            "default": 5
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterBasicGet"
      },
      "task": true
    },
    {
      "name": "iapMoveAdapterEntitiesToDB",
      "summary": "Moves entities from an adapter into the Itential Platform database",
      "description": "Moves entities from an adapter into the Itential Platform database",
      "input": [],
      "output": {
        "name": "res",
        "type": "object",
        "description": "A JSON Object containing status, code and the response from the mongo transaction",
        "schema": {
          "title": "res",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapMoveAdapterEntitiesToDB"
      },
      "task": true
    },
    {
      "name": "iapDeactivateTasks",
      "summary": "Deactivate the inputted tasks",
      "description": "Deactivate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to deactivate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapDeactivateTasks"
      },
      "task": true
    },
    {
      "name": "iapActivateTasks",
      "summary": "Activate the inputted tasks",
      "description": "activate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to activate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapActivateTasks"
      },
      "task": true
    },
    {
      "name": "iapPopulateEntityCache",
      "summary": "Populate the cache for the given entities",
      "description": "Populate the cache for the given entities",
      "input": [
        {
          "name": "entityTypes",
          "type": "array",
          "info": "the entity type(s) to populate",
          "required": true,
          "schema": {
            "title": "entityTypes",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapPopulateEntityCache"
      },
      "task": true
    },
    {
      "name": "iapRetrieveEntitiesCache",
      "summary": "Retrieves data from cache for specified entity type",
      "description": "Retrieves data from cache for specified entity type",
      "input": [
        {
          "name": "entityType",
          "type": "string",
          "info": "entity of which to retrieve",
          "required": true,
          "schema": {
            "title": "entityType",
            "type": "string"
          }
        },
        {
          "name": "options",
          "type": "object",
          "info": "settings of which data to return and how to return it",
          "required": false,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRetrieveEntitiesCache"
      },
      "task": true
    },
    {
      "name": "getDevice",
      "summary": "Get the Appliance",
      "description": "Get the Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevice"
      },
      "task": false
    },
    {
      "name": "getDevicesFiltered",
      "summary": "Get Appliances that match the filter",
      "description": "Get Appliances that match the filter",
      "input": [
        {
          "name": "options",
          "type": "object",
          "info": "options - e.g. { 'start': 1, 'limit': 20, 'filter': { 'name': 'abc123' } }",
          "required": true,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "array",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "array"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesFiltered"
      },
      "task": false
    },
    {
      "name": "isAlive",
      "summary": "Checks the status for the provided Appliance",
      "description": "Checks the status for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/isAlive"
      },
      "task": false
    },
    {
      "name": "getConfig",
      "summary": "Gets a config for the provided Appliance",
      "description": "Gets a config for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "format",
          "type": "string",
          "info": "The format to be returned - this is ignored as we always return json",
          "required": false,
          "schema": {
            "title": "format",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getConfig"
      },
      "task": false
    },
    {
      "name": "iapGetDeviceCount",
      "summary": "Gets a device count from the system",
      "description": "Gets a device count from the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetDeviceCount"
      },
      "task": false
    },
    {
      "name": "iapExpandedGenericAdapterRequest",
      "summary": "Makes the requested generic call with additional options",
      "description": "Makes the requested generic call with additional options via metadata",
      "input": [
        {
          "name": "metadata",
          "type": "object",
          "info": "metadata for the call (optional)",
          "description": "metadata for the call - allows for many enhancements (optional)",
          "schema": {
            "title": "metadata",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "pathVars",
          "type": "object",
          "info": "the parameters to be put within the url path (optional)",
          "description": "the parameters to be put within the url path (optional)",
          "schema": {
            "title": "pathVars",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapExpandedGenericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequest",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequestNoBasePath",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequestNoBasePath"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterLint",
      "summary": "Run the adapter lint script to return the results",
      "description": "Run the adapter lint script to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "string",
        "description": "A string containing the run results",
        "schema": {
          "title": "result",
          "type": "string"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterLint"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterTests",
      "summary": "Run the adapter test scripts (baseunit and unit) to return the results",
      "description": "Run the adapter test scripts (baseunit and unit) to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterTests"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterInventory",
      "summary": "Provide inventory information abbout the adapter",
      "description": "Provide inventory information abbout the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapGetAdapterInventory"
      },
      "task": true
    },
    {
      "name": "getCards",
      "summary": "Get cards from EAI",
      "description": "This method will get cards from EAI based on the criteria provided",
      "input": [
        {
          "name": "cardId",
          "type": "string",
          "info": "the id of a particular card to get (optional)",
          "schema": {
            "title": "cardId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCards"
      },
      "task": true
    },
    {
      "name": "getCardTemplates",
      "summary": "Get card templates from EAI",
      "description": "This method will get card templates from EAI based on the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getCardTemplates"
      },
      "task": true
    },
    {
      "name": "createCard",
      "summary": "Create a card in EAI",
      "description": "This method will create a card in EAI with the information provided",
      "input": [
        {
          "name": "cardData",
          "type": "object",
          "info": "the card information to be sent in with the request (required)",
          "schema": {
            "title": "cardData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createCard"
      },
      "task": true
    },
    {
      "name": "createCardTemplate",
      "summary": "Create a card template in EAI",
      "description": "This method will create a card template in EAI with the information provided",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createCardTemplate"
      },
      "task": true
    },
    {
      "name": "updateCard",
      "summary": "Update a card in EAI",
      "description": "This method will update a card in EAI with the information provided",
      "input": [
        {
          "name": "cardId",
          "type": "string",
          "info": "the id of a particular card to update (required)",
          "schema": {
            "title": "cardId",
            "type": "string"
          }
        },
        {
          "name": "cardData",
          "type": "object",
          "info": "the card information to be sent in with the request (required)",
          "schema": {
            "title": "cardData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateCard"
      },
      "task": true
    },
    {
      "name": "updateCardTemplate",
      "summary": "Update a card template in EAI",
      "description": "This method will update a card template in EAI with the information provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateCardTemplate"
      },
      "task": true
    },
    {
      "name": "deleteCard",
      "summary": "Delete a card in EAI",
      "description": "This method will delete a card in EAI",
      "input": [
        {
          "name": "cardId",
          "type": "string",
          "info": "the id of a particular card to delete (required)",
          "schema": {
            "title": "cardId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteCard"
      },
      "task": true
    },
    {
      "name": "deleteCardTemplate",
      "summary": "Delete a card template in EAI",
      "description": "This method will delete a card template in EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteCardTemplate"
      },
      "task": true
    },
    {
      "name": "getContainers",
      "summary": "Gets Containers from EAI",
      "description": "This method gets Containers from EAI based on the criteria provided",
      "input": [
        {
          "name": "containerId",
          "type": "string",
          "info": "the id of a particular container to get (optional)",
          "schema": {
            "title": "containerId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainers"
      },
      "task": true
    },
    {
      "name": "getContainerTemplates",
      "summary": "Gets Container Templates from EAI",
      "description": "This method gets Container Templates from EAI based on the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainerTemplates"
      },
      "task": true
    },
    {
      "name": "createContainer",
      "summary": "Creates a Container in EAI",
      "description": "This method creates a Container in EAI with the provided information",
      "input": [
        {
          "name": "containerData",
          "type": "object",
          "info": "the container information to be sent in with the request (required)",
          "schema": {
            "title": "containerData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createContainer"
      },
      "task": true
    },
    {
      "name": "createContainerTemplate",
      "summary": "Creates a Container Template in EAI",
      "description": "This method creates a Container Template in EAI with the provided information",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createContainerTemplate"
      },
      "task": true
    },
    {
      "name": "updateContainer",
      "summary": "Updates a Container in EAI",
      "description": "This method updates a Container in EAI with the provided information",
      "input": [
        {
          "name": "containerId",
          "type": "string",
          "info": "the id of a particular container to update (required)",
          "schema": {
            "title": "containerId",
            "type": "string"
          }
        },
        {
          "name": "containerData",
          "type": "object",
          "info": "the container information to be sent in with the request (required)",
          "schema": {
            "title": "containerData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateContainer"
      },
      "task": true
    },
    {
      "name": "updateContainerTemplate",
      "summary": "Updates a Container Template in EAI",
      "description": "This method updates a Container Template in EAI with the provided information",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateContainerTemplate"
      },
      "task": true
    },
    {
      "name": "deleteContainer",
      "summary": "Deletes a Container from EAI",
      "description": "This method deletes a Container from EAI",
      "input": [
        {
          "name": "containerId",
          "type": "string",
          "info": "the id of a particular container to delete (required)",
          "schema": {
            "title": "containerId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteContainer"
      },
      "task": true
    },
    {
      "name": "deleteContainerTemplate",
      "summary": "Deletes a Container Template from EAI",
      "description": "This method deletes a Container Template from EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteContainerTemplate"
      },
      "task": true
    },
    {
      "name": "getEquipments",
      "summary": "Gets equipment from EAI",
      "description": "This method gets equipment from EAI based on the critieria provided",
      "input": [
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEquipments"
      },
      "task": true
    },
    {
      "name": "getPorts",
      "summary": "Gets Ports from EAI",
      "description": "This method gets Ports from EAI based on the criteria provided",
      "input": [
        {
          "name": "portId",
          "type": "string",
          "info": "the id of a particular port to get (optional)",
          "schema": {
            "title": "portId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPorts"
      },
      "task": true
    },
    {
      "name": "getPortTemplates",
      "summary": "Gets Port Templates from EAI",
      "description": "This method gets Port Templates from EAI based on the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular port template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPortTemplates"
      },
      "task": true
    },
    {
      "name": "createPort",
      "summary": "Creates a port in EAI",
      "description": "This method creates a port in EAI with the provided information",
      "input": [
        {
          "name": "portData",
          "type": "object",
          "info": "the port information to be sent in with the request (required)",
          "schema": {
            "title": "portData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createPort"
      },
      "task": true
    },
    {
      "name": "createPortTemplate",
      "summary": "Creates a port template in EAI",
      "description": "This method creates a port template in EAI with the provided information",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the port template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createPortTemplate"
      },
      "task": true
    },
    {
      "name": "updatePort",
      "summary": "Updates a Port in EAI",
      "description": "This method updates a Port in EAI with the information provided",
      "input": [
        {
          "name": "portId",
          "type": "string",
          "info": "the id of a particular port to update (required)",
          "schema": {
            "title": "portId",
            "type": "string"
          }
        },
        {
          "name": "portData",
          "type": "object",
          "info": "the port information to be sent in with the request (required)",
          "schema": {
            "title": "portData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updatePort"
      },
      "task": true
    },
    {
      "name": "updatePortTemplate",
      "summary": "Updates a Port Template in EAI",
      "description": "This method updates a Port Template in EAI with the information provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular port template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the port template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updatePortTemplate"
      },
      "task": true
    },
    {
      "name": "deletePort",
      "summary": "Deletes a Port from EAI",
      "description": "This method deletes a Port from EAI",
      "input": [
        {
          "name": "portId",
          "type": "string",
          "info": "the id of a particular port to delete (required)",
          "schema": {
            "title": "portId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deletePort"
      },
      "task": true
    },
    {
      "name": "deletePortTemplate",
      "summary": "Deletes a Port Template from EAI",
      "description": "This method deletes a Port Template from EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular port template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deletePortTemplate"
      },
      "task": true
    },
    {
      "name": "getShelves",
      "summary": "Gets shelves from EAI",
      "description": "This method gets shelves from EAI with the criteria provided",
      "input": [
        {
          "name": "shelfId",
          "type": "string",
          "info": "the id of a particular shelf to get (optional)",
          "schema": {
            "title": "shelfId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getShelves"
      },
      "task": true
    },
    {
      "name": "getShelfTemplates",
      "summary": "Gets shelf templates from EAI",
      "description": "This method gets shelf templates from EAI with the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getShelfTemplates"
      },
      "task": true
    },
    {
      "name": "createShelf",
      "summary": "Creates a Shelf in EAI",
      "description": "This method creates a Shelf in EAI with the provided information",
      "input": [
        {
          "name": "shelfData",
          "type": "object",
          "info": "the shelf information to be sent in with the request (required)",
          "schema": {
            "title": "shelfData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createShelf"
      },
      "task": true
    },
    {
      "name": "createShelfTemplate",
      "summary": "Creates a Shelf Template in EAI",
      "description": "This method creates a Shelf Template in EAI with the provided information",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createShelfTemplate"
      },
      "task": true
    },
    {
      "name": "updateShelf",
      "summary": "Updates a Shelf in EAI",
      "description": "This method updates a Shelf in EAI with the provided information",
      "input": [
        {
          "name": "shelfId",
          "type": "string",
          "info": "the id of a particular shelf to update (required)",
          "schema": {
            "title": "shelfId",
            "type": "string"
          }
        },
        {
          "name": "shelfData",
          "type": "object",
          "info": "the shelf information to be sent in with the request (required)",
          "schema": {
            "title": "shelfData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateShelf"
      },
      "task": true
    },
    {
      "name": "updateShelfTemplate",
      "summary": "Updates a Shelf Template in EAI",
      "description": "This method updates a Shelf Template in EAI with the provided information",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateShelfTemplate"
      },
      "task": true
    },
    {
      "name": "deleteShelf",
      "summary": "Deletes a Shelf in EAI",
      "description": "This method deletes a Shelf in EAI",
      "input": [
        {
          "name": "shelfId",
          "type": "string",
          "info": "the id of a particular shelf to delete (required)",
          "schema": {
            "title": "shelfId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteShelf"
      },
      "task": true
    },
    {
      "name": "deleteShelfTemplate",
      "summary": "Deletes a Shelf Template in EAI",
      "description": "This method deletes a Shelf Template in EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteShelfTemplate"
      },
      "task": true
    },
    {
      "name": "getSites",
      "summary": "Gets Sites from EAI",
      "description": "This method gets Sites from EAI with the criteria provided",
      "input": [
        {
          "name": "siteId",
          "type": "string",
          "info": "the id of a particular site to get (optional)",
          "schema": {
            "title": "siteId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSites"
      },
      "task": true
    },
    {
      "name": "getSiteTemplates",
      "summary": "Gets Site Templates from EAI",
      "description": "This method gets Site Templates from EAI with the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular site template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSiteTemplates"
      },
      "task": true
    },
    {
      "name": "createSite",
      "summary": "Creates a Site in EAI",
      "description": "This method creates a Site in EAI with the provided information",
      "input": [
        {
          "name": "siteData",
          "type": "object",
          "info": "the site information to be sent in with the request (required)",
          "schema": {
            "title": "siteData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSite"
      },
      "task": true
    },
    {
      "name": "createSiteTemplate",
      "summary": "Creates a Site Template in EAI",
      "description": "This method creates a Site Template in EAI with the provided information",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the site template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSiteTemplate"
      },
      "task": true
    },
    {
      "name": "updateSite",
      "summary": "Updates a Site in EAI",
      "description": "This method updates a Site in EAI with the provided information",
      "input": [
        {
          "name": "siteId",
          "type": "string",
          "info": "the id of a particular site to update (required)",
          "schema": {
            "title": "siteId",
            "type": "string"
          }
        },
        {
          "name": "siteData",
          "type": "object",
          "info": "the site information to be sent in with the request (required)",
          "schema": {
            "title": "siteData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateSite"
      },
      "task": true
    },
    {
      "name": "updateSiteTemplate",
      "summary": "Updates a Site Template in EAI",
      "description": "This method updates a Site Template in EAI with the provided information",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular site template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the site template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateSiteTemplate"
      },
      "task": true
    },
    {
      "name": "deleteSite",
      "summary": "Deletes a Site in EAI",
      "description": "This method deletes a Site in EAI",
      "input": [
        {
          "name": "siteId",
          "type": "string",
          "info": "the id of a particular site to delete (required)",
          "schema": {
            "title": "siteId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSite"
      },
      "task": true
    },
    {
      "name": "deleteSiteTemplate",
      "summary": "Deletes a Site Template in EAI",
      "description": "This method deletes a Site Template in EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular site template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSiteTemplate"
      },
      "task": true
    },
    {
      "name": "getSlots",
      "summary": "Gets Slots from EAI",
      "description": "This method gets Slots from EAI with the criteria provided",
      "input": [
        {
          "name": "slotId",
          "type": "string",
          "info": "the id of a particular slot to get (optional)",
          "schema": {
            "title": "slotId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSlots"
      },
      "task": true
    },
    {
      "name": "getSlotTemplates",
      "summary": "Gets Slot Templates from EAI",
      "description": "This method gets Slot Templates from EAI with the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSlotTemplates"
      },
      "task": true
    },
    {
      "name": "createSlot",
      "summary": "Creates a Slot in EAI",
      "description": "This method creates a Slot in EAI with the provided information",
      "input": [
        {
          "name": "slotData",
          "type": "object",
          "info": "the slot information to be sent in with the request (required)",
          "schema": {
            "title": "slotData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSlot"
      },
      "task": true
    },
    {
      "name": "createSlotTemplate",
      "summary": "Creates a Slot Template in EAI",
      "description": "This method creates a Slot Template in EAI with the provided information",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createSlotTemplate"
      },
      "task": true
    },
    {
      "name": "updateSlot",
      "summary": "Updates a Slot in EAI",
      "description": "This method updates a Slot in EAI with the provided information",
      "input": [
        {
          "name": "slotId",
          "type": "string",
          "info": "the id of a particular slot to update (required)",
          "schema": {
            "title": "slotId",
            "type": "string"
          }
        },
        {
          "name": "slotData",
          "type": "object",
          "info": "the slot information to be sent in with the request (required)",
          "schema": {
            "title": "slotData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateSlot"
      },
      "task": true
    },
    {
      "name": "updateSlotTemplate",
      "summary": "Updates a Slot Template in EAI",
      "description": "This method updates a Slot Template in EAI with the provided information",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateSlotTemplate"
      },
      "task": true
    },
    {
      "name": "deleteSlot",
      "summary": "Deletes a Slot from EAI",
      "description": "This method deletes a Slot from EAI",
      "input": [
        {
          "name": "slotId",
          "type": "string",
          "info": "the id of a particular slot to update (required)",
          "schema": {
            "title": "slotId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSlot"
      },
      "task": true
    },
    {
      "name": "deleteSlotTemplate",
      "summary": "Deletes a Slot Template from EAI",
      "description": "This method deletes a Slot Template from EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSlotTemplate"
      },
      "task": true
    },
    {
      "name": "getTrails",
      "summary": "Gets Trails from EAI",
      "description": "This method gets Trails from EAI with the criteria provided",
      "input": [
        {
          "name": "trailId",
          "type": "string",
          "info": "the id of a particular trail to get (optional)",
          "schema": {
            "title": "trailId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTrails"
      },
      "task": true
    },
    {
      "name": "getTrailQuery",
      "summary": "Gets Trails from EAI",
      "description": "This method gets Trails from EAI with the criteria provided",
      "input": [
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTrailQuery"
      },
      "task": true
    },
    {
      "name": "getTrailTemplates",
      "summary": "Gets Trail Templates from EAI",
      "description": "This method gets Trail Templates from EAI with the criteria provided",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to get (optional)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTrailTemplates"
      },
      "task": true
    },
    {
      "name": "createTrail",
      "summary": "Creates a Trail in EAI",
      "description": "This method creates a Trail in EAI with the provided infromation",
      "input": [
        {
          "name": "trailData",
          "type": "object",
          "info": "the trail information to be sent in with the request (required)",
          "schema": {
            "title": "trailData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createTrail"
      },
      "task": true
    },
    {
      "name": "createTrailTemplate",
      "summary": "Creates a Trail Template in EAI",
      "description": "This method creates a Trail Template in EAI with the provided infromation",
      "input": [
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createTrailTemplate"
      },
      "task": true
    },
    {
      "name": "updateTrail",
      "summary": "Updates a Trail in EAI",
      "description": "This method updates a Trail in EAI with the provided information",
      "input": [
        {
          "name": "trailId",
          "type": "string",
          "info": "the id of a particular trail to update (required)",
          "schema": {
            "title": "trailId",
            "type": "string"
          }
        },
        {
          "name": "trailData",
          "type": "object",
          "info": "the trail information to be sent in with the request (required)",
          "schema": {
            "title": "trailData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTrail"
      },
      "task": true
    },
    {
      "name": "updateTrailBySite",
      "summary": "Updates a Trail in EAI",
      "description": "This method updates a Trail in EAI with the provided information",
      "input": [
        {
          "name": "siteQuery",
          "type": "object",
          "info": "the query for the site trail to update (required)",
          "schema": {
            "title": "siteQuery",
            "type": "string"
          }
        },
        {
          "name": "trailData",
          "type": "object",
          "info": "the trail information to be sent in with the request (required)",
          "schema": {
            "title": "trailData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTrail"
      },
      "task": true
    },
    {
      "name": "updateTrailTemplate",
      "summary": "Updates a Trail Template in EAI",
      "description": "This method updates a Trail Template in EAI with the provided information",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to update (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "templateData",
          "type": "object",
          "info": "the template information to be sent in with the request (required)",
          "schema": {
            "title": "templateData",
            "type": "object"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateTrailTemplate"
      },
      "task": true
    },
    {
      "name": "deleteTrail",
      "summary": "Deletes a Trail from EAI",
      "description": "This method deletes a Trail from EAI",
      "input": [
        {
          "name": "trailId",
          "type": "string",
          "info": "the id of a particular trail to delete (required)",
          "schema": {
            "title": "trailId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteTrail"
      },
      "task": true
    },
    {
      "name": "deleteTrailTemplate",
      "summary": "Deletes a Trail Template from EAI",
      "description": "This method deletes a Trail Template from EAI",
      "input": [
        {
          "name": "templateId",
          "type": "string",
          "info": "the id of a particular template to delete (required)",
          "schema": {
            "title": "templateId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteTrailTemplate"
      },
      "task": true
    },
    {
      "name": "getGenerics",
      "summary": "Gets Generics from EAI",
      "description": "This method gets Generics from EAI with the criteria provided",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the eai data to retrieve (required)",
          "schema": {
            "title": "uriPath",
            "type": "string"
          }
        },
        {
          "name": "entityId",
          "type": "string",
          "info": "the id of a specific generic to get. (optional)",
          "schema": {
            "title": "entityId",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getGenerics"
      },
      "task": true
    },
    {
      "name": "createGeneric",
      "summary": "Creates a Generic in EAI",
      "description": "This method creates a Generic in EAI with the provided information",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the eai data to retrieve (required)",
          "schema": {
            "title": "uriPath",
            "type": "string"
          }
        },
        {
          "name": "genericData",
          "type": "object",
          "info": "the generic to create in EAI",
          "schema": {
            "title": "genericData",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/createGeneric"
      },
      "task": true
    },
    {
      "name": "updateGeneric",
      "summary": "Updates a Generic in EAI",
      "description": "This method updates a Generic in EAI with the provided information",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the entity to update data in (required)",
          "schema": {
            "title": "uriPath",
            "type": "string"
          }
        },
        {
          "name": "entityId",
          "type": "string",
          "info": "the id of the generic to update in EAI",
          "schema": {
            "title": "entityId",
            "type": "string"
          }
        },
        {
          "name": "genericData",
          "type": "object",
          "info": "the generic data to update in EAI",
          "schema": {
            "title": "genericData",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/updateGeneric"
      },
      "task": true
    },
    {
      "name": "deleteGeneric",
      "summary": "Deletes a Generic in EAI",
      "description": "This method deletes a Generic in EAI",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the entity to delete (required)",
          "schema": {
            "title": "uriPath",
            "type": "string"
          }
        },
        {
          "name": "entityId",
          "type": "string",
          "info": "the id of the generic to remove from EAI",
          "schema": {
            "title": "entityId",
            "type": "string"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteGeneric"
      },
      "task": true
    },
    {
      "name": "processRequest",
      "summary": "process a variety of different requests",
      "description": "Processes a vareity of different requests to EAI",
      "input": [
        {
          "name": "entity",
          "type": "string",
          "info": "the entity the request is for (required)",
          "schema": {
            "title": "entity",
            "type": "string"
          }
        },
        {
          "name": "action",
          "type": "string",
          "info": "the action the request is for (required)",
          "schema": {
            "title": "action",
            "type": "string"
          }
        },
        {
          "name": "queryParams",
          "type": "object",
          "info": "query parameters to be put on the call (optional)",
          "schema": {
            "title": "queryParams",
            "type": "object"
          }
        },
        {
          "name": "bodyParams",
          "type": "object",
          "info": "body parameters to be put on the call (depends on call)",
          "schema": {
            "title": "bodyParams",
            "type": "object"
          }
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/processRequest"
      },
      "task": false
    }
  ]
}