Evo Voice

<back to all web services

NewAISession

Creates a new session

Requires Authentication
Requires the role:SystemAdministrator
The following routes are available for this service:
POST/ai/sessions
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    /**
    * Creates a new session
    */
    @Api(Description="Creates a new session")
    public static class NewAISession implements IPost
    {
        /**
        * The account ID to associate this session with
        */
        @ApiMember(Description="The account ID to associate this session with")
        public String accountId = null;

        /**
        * The purpose for this session
        */
        @ApiMember(Description="The purpose for this session")
        public String purpose = null;
        
        public String getAccountId() { return accountId; }
        public NewAISession setAccountId(String value) { this.accountId = value; return this; }
        public String getPurpose() { return purpose; }
        public NewAISession setPurpose(String value) { this.purpose = value; return this; }
    }

    public static class AISessionInfo extends EntityInfo
    {
        /**
        * The ID of the account associated with this session
        */
        @ApiMember(Description="The ID of the account associated with this session")
        public String accountId = null;

        /**
        * The name of the account associated with this customer
        */
        @ApiMember(Description="The name of the account associated with this customer")
        public String accountName = null;

        /**
        * The purpose for this AI session
        */
        @ApiMember(Description="The purpose for this AI session")
        public String purpose = null;
        
        public String getAccountId() { return accountId; }
        public AISessionInfo setAccountId(String value) { this.accountId = value; return this; }
        public String getAccountName() { return accountName; }
        public AISessionInfo setAccountName(String value) { this.accountName = value; return this; }
        public String getPurpose() { return purpose; }
        public AISessionInfo setPurpose(String value) { this.purpose = value; return this; }
    }

    public static class EntityInfo
    {
        /**
        * The ID of the object
        */
        @ApiMember(Description="The ID of the object")
        public String id = null;

        /**
        * The date the object was created
        */
        @ApiMember(Description="The date the object was created")
        public String dateCreated = null;

        /**
        * The date the object was last modified
        */
        @ApiMember(Description="The date the object was last modified")
        public String dateLastModified = null;

        /**
        * The user that created this object
        */
        @ApiMember(Description="The user that created this object")
        public String createdBy = null;

        /**
        * The user that last modified this object
        */
        @ApiMember(Description="The user that last modified this object")
        public String lastModifiedBy = null;
        
        public String getId() { return id; }
        public EntityInfo setId(String value) { this.id = value; return this; }
        public String getDateCreated() { return dateCreated; }
        public EntityInfo setDateCreated(String value) { this.dateCreated = value; return this; }
        public String getDateLastModified() { return dateLastModified; }
        public EntityInfo setDateLastModified(String value) { this.dateLastModified = value; return this; }
        public String getCreatedBy() { return createdBy; }
        public EntityInfo setCreatedBy(String value) { this.createdBy = value; return this; }
        public String getLastModifiedBy() { return lastModifiedBy; }
        public EntityInfo setLastModifiedBy(String value) { this.lastModifiedBy = value; return this; }
    }

}

Java NewAISession DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /ai/sessions HTTP/1.1 
Host: evovoice.io 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<NewAISession xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.AI">
  <AccountId>String</AccountId>
  <Purpose>String</Purpose>
</NewAISession>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<AISessionInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.AI">
  <CreatedBy xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</CreatedBy>
  <DateCreated xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</DateCreated>
  <DateLastModified xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</DateLastModified>
  <Id xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</Id>
  <LastModifiedBy xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</LastModifiedBy>
  <AccountId>String</AccountId>
  <AccountName>String</AccountName>
  <Purpose>String</Purpose>
</AISessionInfo>