/
Deployement management of Chatbots

Deployement management of Chatbots

In this section we will discuss the deployment management of chabots.

After all the resources required of the chatbot has been well created and configured ( Dictionary ,Behavior Rules,Output,Package,etc..) and the chat bot is created through a POST to the api endpoint /botstore/bots, the deployment management of the chatbots is offered by EDDI through the following end points :

  • Deployment of a chatbot :

The deployment of a specific chatbot is done through a POST to /administration/{environment}/deploy/{botId}:


HTTP MethodPOST
Api endpoint /administration/{environment}/deploy/{botId}
{environment}

(Path parameter):String

deployment environment (e.g: restricted,unrestricted,test)

{botId}

(Path parameter):String

id of the bot that you wish to deploy.

Example :

Deploy a chatbot
Request URL:
	http://localhost:7070/administration/unrestricted/deploy/5aaf98e19f7dd421ac3c7de9?version=1&autoDeploy=true

Response Body
	no content

Response Code
	202

Response Headers
{
  "access-control-allow-origin": "*",
  "date": "Mon, 19 Mar 2018 16:32:58 GMT",
  "access-control-allow-headers": "authorization, Content-Type",
  "content-length": "0",
  "access-control-allow-methods": "GET, PUT, POST, DELETE, PATCH, OPTIONS",
  "content-type": null
}
  • Un-deployment of a chatbot :

The undeployment of a specific chatbot is done through a POST to /administration/{environment}/undeploy/{botId}:


HTTP MethodPOST
Api endpoint /administration/{environment}/undeploy/{botId}
{environment}

(Path parameter):String

deployment environment (e.g: restricted,unrestricted,test)

{botId}

(Path parameter):String

id of the bot that you wish to undeploy.

Example :

Un-deploy a chatbot
Request URL
	http://localhost:7070/administration/unrestricted/undeploy/5aaf98e19f7dd421ac3c7de9?version=1
Response Body
	no content
Response Code
	202
Response Headers
{
  "access-control-allow-origin": "*",
  "date": "Mon, 19 Mar 2018 16:38:36 GMT",
  "access-control-allow-headers": "authorization, Content-Type",
  "content-length": "0",
  "access-control-allow-methods": "GET, PUT, POST, DELETE, PATCH, OPTIONS",
  "content-type": null
}

  • Check the deployment status of a chatbot :

Check the deployement status of a bot is done through a GET to /administration/{environment}/undeploy/{botId}:

HTTP MethodGET
Api endpoint /administration/{environment}/deploymentstatus/{botId}
{environment}

(Path parameter):String

deployment environment (e.g: restricted,unrestricted,test)

{botId}

(Path parameter):String

Id of the bot that you wish to check its status. 

As a response of the request expect the following values :
NOT_FOUND
, IN_PROGRESS, ERROR and READY.

Example:

Check deployment status of a bot
Request URL
	http://localhost:7070/administration/unrestricted/deploymentstatus/5aaf98e19f7dd421ac3c7de9?version=1
Response Body
	READY
Response Code
	200
Response Headers
{
  "access-control-allow-origin": "*",
  "date": "Mon, 19 Mar 2018 16:33:08 GMT",
  "access-control-allow-headers": "authorization, Content-Type",
  "content-length": "5",
  "access-control-allow-methods": "GET, PUT, POST, DELETE, PATCH, OPTIONS",
  "content-type": "text/plain;charset=utf-8"
}
  • List all deployed chatbots:


To list all the deployed chatbots a GET to /administration/{environment}/undeploy/{botId}:


HTTP MethodGET
Api endpoint /deploymentstore/deployments

Example :

List all deployments
Request URL
	http://localhost:7070/deploymentstore/deployments
Response Code
	200
Response Body
[
  {
    "botId": "5aaf90e29f7dd421ac3c7dd4",
    "botVersion": 1,
    "environment": "unrestricted",
    "deploymentStatus": "deployed"
  },
  {
    "botId": "5aaf90e29f7dd421ac3c7dd4",
    "botVersion": 1,
    "environment": "restricted",
    "deploymentStatus": "deployed"
  },
  {
    "botId": "5aaf98e19f7dd421ac3c7de9",
    "botVersion": 1,
    "environment": "unrestricted",
    "deploymentStatus": "deployed"
  }
]

Response Headers
{
  "access-control-allow-origin": "*",
  "date": "Mon, 19 Mar 2018 16:33:29 GMT",
  "access-control-allow-headers": "authorization, Content-Type",
  "content-length": "414",
  "access-control-allow-methods": "GET, PUT, POST, DELETE, PATCH, OPTIONS",
  "content-type": "application/json"
}