Search
K

Deployement management of Chatbots

Deployement management of Chatbots

In this section we will discuss the deployment management of Chatbots which consists of deployment/undeployment, checking status of deployment and list all the deployed Chatbots.
After all the resources required of the chatbot has been well created and configured ( Dictionary ,Behavior Rules,Output,Package,etc..) and the Chatbot is created through a POST to the API endpoint /botstore/bots, the deployment management of the Chatbots is offered by EDDI is key to have granular control over the deployed bots.

Deployment of a Chatbot :

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

Deploy Chatbot REST API Endpoint

Element
Value
HTTP Method
POST
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 :

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
}

Undeployment of a Chatbot

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

Undeploy Chatbot REST API Endpoint

Element
Value
HTTP Method
POST
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 :

Undeploy 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 deployment status of a bot is done through a GET to /administration/{environment}/deploymentstatus/{botId}
Deployment status of a Chatbot REST API Endpoint
Element
Value
HTTP Method
GET
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 deployment status.
Response
NOT_FOUND, IN_PROGRESS, ERROR and READY.

Example:

Request URL
http://localhost:7070/administration/unrestricted/deploymentstatus/5aaf98e19f7dd421ac3c7de9?version=1
Response Body
READY
Response Code
200
Response Headers

List all deployed Chatbots:

{
"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"
}
To list all the deployed Chabots a GET to /administration/{environment}/deploymentstore/{botId}:

List of Deployed Chatbots REST API Endpoint

Element
Value
HTTP Method
GET
API endpoint
/deploymentstore/deployments

Example :

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"
}