Online Now  

/v1/aichat/

Manages AI Chat related functions
GET

/v1/aichat/get

#
Gets messages for a user thread

Parameters

NameTypeRequiredDefaultDescription
chatName string Yes — Name of the chat
isAssistantThread bool No false defines if this is an assistant thread
pageSize int No 50 Defines how many results will be return per request
pageNumber int No 0 Defines which page should be returned
Request example (cURL)
curl --get \
  'https://appointmenttrader.com/v1/aichat/get' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'chatName={{chatName}}' \
  --data-urlencode 'isAssistantThread={{isAssistantThread}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'pageNumber={{pageNumber}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$aichat_get_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadobject Yes
$.oneOf[0].allOf[1].Payload.ATResponseObjectType = "NestedKeyValueList" Yes
$.oneOf[0].allOf[1].Payload.ResponseBodyobject Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.Namestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformationarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.MetaInformation[]string No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueListarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[]object No
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].interfaceMessageIDDatabaseInteger YesInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].interfaceMessageID.oneOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].interfaceMessageID.oneOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].messageCreatedDatestring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isAIResponse Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isAIResponse.anyOf[0]DatabaseInteger YesInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isAIResponse.anyOf[0].oneOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isAIResponse.anyOf[0].oneOf[1]string Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].isAIResponse.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].rolestring ["assistant","user","function"] Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].contentstring Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].richContent Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].richContent.anyOf[0]string YesStored rich-content text; this endpoint does not decode it.
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueList[].richContent.anyOf[1]null Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueFieldListarray Yes
$.oneOf[0].allOf[1].Payload.ResponseBody.KeyValueFieldList[]string No
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/aichat/get",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATResponseObjectType": "NestedKeyValueList",
        "ResponseBody": {
            "Name": "synthetic-example",
            "MetaInformation": [],
            "KeyValueList": [],
            "KeyValueFieldList": []
        }
    }
}
Machine-readable endpoint documentation
GET

/v1/aichat/get_status

#
Gets messages for a user thread

Parameters

NameTypeRequiredDefaultDescription
chatName string Yes — Name of the chat
Request example (cURL)
curl --get \
  'https://appointmenttrader.com/v1/aichat/get_status' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'chatName={{chatName}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$aichat_get_status_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payloadarray Yes
$.oneOf[0].allOf[1].Payload[] No
$.oneOf[0].allOf[1].Payload[].oneOf[0]object No
$.oneOf[0].allOf[1].Payload[].oneOf[0].status = "message_update_available" Yes
$.oneOf[0].allOf[1].Payload[].oneOf[0].contentobject Yes
$.oneOf[0].allOf[1].Payload[].oneOf[0].content.interfaceMessageIDDatabaseInteger YesInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload[].oneOf[0].content.interfaceMessageID.oneOf[0]integer Yes
$.oneOf[0].allOf[1].Payload[].oneOf[0].content.interfaceMessageID.oneOf[1]string Yes
$.oneOf[0].allOf[1].Payload[].oneOf[0].content.continuePolling = false Yes
$.oneOf[0].allOf[1].Payload[].oneOf[0].content.contentstring Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1]object No
$.oneOf[0].allOf[1].Payload[].oneOf[1].status = "message_update_available" Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].contentobject Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.interfaceMessageIDDatabaseInteger YesInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.interfaceMessageID.oneOf[0]integer Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.interfaceMessageID.oneOf[1]string Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.continuePolling = true Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContentAIChatRichContent Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0]object Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0].htmlstring Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0].positionstring ["top","bottom"] Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0].javascriptstring No
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0].uiDescriptionstring No
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[0].uniqueIdstring No
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[1]object Yes
$.oneOf[0].allOf[1].Payload[].oneOf[1].content.richContent.oneOf[1].errorstring Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/aichat/get_status",
    "RequestUserAlias": "example-user",
    "Payload": []
}
Machine-readable endpoint documentation
POST

/v1/aichat/set

#
Sends a message to an AI chat

Parameters

NameTypeRequiredDefaultDescription
message string Yes — the body of the user message, no more than 10k characters
chatName string Yes — Name of the chat
respondByAssistantID string No "" If respondByAssistantID is empty the message will be processed later.
isWritingRequest bool No false all set_[...] functions have this parameter - if false (which is default) the method will execute without writing any data. Set this parameter to true once you are sure that you tested your logic and want to execute a writing request
Request example (cURL)
curl --request POST \
  'https://appointmenttrader.com/v1/aichat/set' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'message={{message}}' \
  --data-urlencode 'chatName={{chatName}}' \
  --data-urlencode 'respondByAssistantID={{respondByAssistantID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$aichat_set_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payload Yes
$.oneOf[0].allOf[1].Payload.oneOf[0]object Yes
$.oneOf[0].allOf[1].Payload.oneOf[0].responseInterfaceMessageIDDatabaseInteger YesInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].responseInterfaceMessageID.oneOf[0]integer Yes
$.oneOf[0].allOf[1].Payload.oneOf[0].responseInterfaceMessageID.oneOf[1]string Yes
$.oneOf[0].allOf[1].Payload.oneOf[1] = true Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/aichat/set",
    "RequestUserAlias": "example-user",
    "Payload": {
        "responseInterfaceMessageID": 0
    }
}
Machine-readable endpoint documentation
POST

/v1/aichat/set_clear

#
Clear chat history

Parameters

NameTypeRequiredDefaultDescription
chatName string Yes — Name of the chat
isWritingRequest bool No false all set_[...] functions have this parameter - if false (which is default) the method will execute without writing any data. Set this parameter to true once you are sure that you tested your logic and want to execute a writing request
Request example (cURL)
curl --request POST \
  'https://appointmenttrader.com/v1/aichat/set_clear' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'chatName={{chatName}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Returns

JSON
See the shared response schema and synthetic example.
Response fields
FieldTypeRequiredDescription
$aichat_set_clear_Response Yes
$.oneOf[0] Yes
$.oneOf[0].allOf[0]object Yes
$.oneOf[0].allOf[0].RequestUserAliasstring Yes
$.oneOf[0].allOf[0].RequestPathstring | null Yes
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Yes
$.oneOf[0].allOf[0].ResponseCodeinteger Yes
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Yes
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Yes
$.oneOf[0].allOf[1].Payload = true Yes
$.oneOf[1]object Yes
$.oneOf[1].RequestUserAliasstring Yes
$.oneOf[1].RequestPathstring | null Yes
$.oneOf[1].RequestStatus = "Failed" Yes
$.oneOf[1].ResponseCodeinteger Yes
$.oneOf[1].ResponseMessageAPIResponseMessage Yes
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Yes
$.oneOf[1].ResponseMessage.oneOf[1]array Yes
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Yes
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Response example
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/aichat/set_clear",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Machine-readable endpoint documentation