API
JAICP provides a number of APIs for accessing its functions via HTTP in order to integrate them into third-party applications.
Dialog APIs
-
Chat API is an API for communicating with chatbots or customer service agents.
Supported methods:- Sending client requests to the chat.
- Fetching asynchronous events in the chat.
- Fetching the chat message history.
- Saving and loading the chat application state.
-
Operator API is an API for integrating JAICP with any customer engagement platform.
Supported methods:- Sending a message, a file, or any arbitrary data to a live agent.
- Selecting the agent group where the message should be routed.
- Subscribing to events in the communication channel.
-
Prompter API is an API for connecting prompters to Aimychat or integrating them into third-party services.
Supported method:- Sending answers to users’ questions to an agent.
NLU APIs
-
NLP Direct API is an API for accessing the NLU core, which is used for natural language understanding.
Supported methods:- Text classification using a trained classifier.
- Importing and exporting NLU data to and from existing JAICP projects.
- Adding, modifying, and deleting intents and entities.
- Classifier training.
- Spell checking.
-
Model API is an API for connecting external NLU services to JAICP.
Other APIs
-
Calls API is an API for working with outbound telephony.
Supported methods:- Adding phone numbers with parameters to the outbound call campaign.
- Canceling previously created call jobs.
- Obtaining campaign reports.
- Starting, pausing, resuming, and stopping the campaign.
-
Pushgate API is an API for managing bot events.
Supported methods:- Creating pushbacks — special entities for triggering bot events.
- Triggering bot events.
- Scheduling events that will be triggered at a specified time.
-
Reporter API is an API for managing project analytics.
Supported methods:- Receiving summary statistics on calls, unique users, and dialogs transferred to the agent.
- Getting advanced statistics on the number of messages, sessions, and labels set.
- Getting client lists, as well as blocking or unblocking them.
- Getting a list of messages for specific sessions or clients.
- Adding, deleting, and getting message and session labels.
- Creating, activating, ending, and deleting experiments, as well as counting the number of sessions involved in experiments.
- Generating reports on sessions, messages, clients, and calls, as well as deleting tasks for report generation.