| Requires the role: | SystemAdministrator |
| POST | /ai/sessions |
|---|
namespace Voice.Api
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type EntityInfo() =
///<summary>
///The ID of the object
///</summary>
[<ApiMember(Description="The ID of the object")>]
member val Id:String = null with get,set
///<summary>
///The date the object was created
///</summary>
[<ApiMember(Description="The date the object was created")>]
member val DateCreated:String = null with get,set
///<summary>
///The date the object was last modified
///</summary>
[<ApiMember(Description="The date the object was last modified")>]
member val DateLastModified:String = null with get,set
///<summary>
///The user that created this object
///</summary>
[<ApiMember(Description="The user that created this object")>]
member val CreatedBy:String = null with get,set
///<summary>
///The user that last modified this object
///</summary>
[<ApiMember(Description="The user that last modified this object")>]
member val LastModifiedBy:String = null with get,set
[<AllowNullLiteral>]
type AISessionInfo() =
inherit EntityInfo()
///<summary>
///The ID of the account associated with this session
///</summary>
[<ApiMember(Description="The ID of the account associated with this session")>]
member val AccountId:String = null with get,set
///<summary>
///The name of the account associated with this customer
///</summary>
[<ApiMember(Description="The name of the account associated with this customer")>]
member val AccountName:String = null with get,set
///<summary>
///The purpose for this AI session
///</summary>
[<ApiMember(Description="The purpose for this AI session")>]
member val Purpose:String = null with get,set
///<summary>
///Creates a new session
///</summary>
[<Api(Description="Creates a new session")>]
[<AllowNullLiteral>]
type NewAISession() =
interface IPost
///<summary>
///The account ID to associate this session with
///</summary>
[<ApiMember(Description="The account ID to associate this session with")>]
member val AccountId:String = null with get,set
///<summary>
///The purpose for this session
///</summary>
[<ApiMember(Description="The purpose for this session")>]
member val Purpose:String = null with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=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>