Start a conversation
curl --request POST \
--url https://app.mindlytics.ai/bc/v1/events/event/start-conversation \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--header 'X-App-ID: <api-key>' \
--data '
{
"session_id": "<string>",
"type": "track",
"event": "Conversation Started",
"conversation_id": "<string>",
"timestamp": "<string>",
"user_id": "<string>",
"device_id": "<string>",
"properties": {},
"attributes": {}
}
'import requests
url = "https://app.mindlytics.ai/bc/v1/events/event/start-conversation"
payload = {
"session_id": "<string>",
"type": "track",
"event": "Conversation Started",
"conversation_id": "<string>",
"timestamp": "<string>",
"user_id": "<string>",
"device_id": "<string>",
"properties": {},
"attributes": {}
}
headers = {
"Authorization": "<api-key>",
"X-App-ID": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<api-key>',
'X-App-ID': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
session_id: '<string>',
type: 'track',
event: 'Conversation Started',
conversation_id: '<string>',
timestamp: '<string>',
user_id: '<string>',
device_id: '<string>',
properties: {},
attributes: {}
})
};
fetch('https://app.mindlytics.ai/bc/v1/events/event/start-conversation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.mindlytics.ai/bc/v1/events/event/start-conversation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'session_id' => '<string>',
'type' => 'track',
'event' => 'Conversation Started',
'conversation_id' => '<string>',
'timestamp' => '<string>',
'user_id' => '<string>',
'device_id' => '<string>',
'properties' => [
],
'attributes' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json",
"X-App-ID: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.mindlytics.ai/bc/v1/events/event/start-conversation"
payload := strings.NewReader("{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("X-App-ID", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.mindlytics.ai/bc/v1/events/event/start-conversation")
.header("Authorization", "<api-key>")
.header("X-App-ID", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.mindlytics.ai/bc/v1/events/event/start-conversation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["X-App-ID"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}"
response = http.request(request)
puts response.read_body[
{
"type": "start_session"
}
]Event Tracking
Start a new conversation
Start a conversation for a user.
POST
/
bc
/
v1
/
events
/
event
/
start-conversation
Start a conversation
curl --request POST \
--url https://app.mindlytics.ai/bc/v1/events/event/start-conversation \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--header 'X-App-ID: <api-key>' \
--data '
{
"session_id": "<string>",
"type": "track",
"event": "Conversation Started",
"conversation_id": "<string>",
"timestamp": "<string>",
"user_id": "<string>",
"device_id": "<string>",
"properties": {},
"attributes": {}
}
'import requests
url = "https://app.mindlytics.ai/bc/v1/events/event/start-conversation"
payload = {
"session_id": "<string>",
"type": "track",
"event": "Conversation Started",
"conversation_id": "<string>",
"timestamp": "<string>",
"user_id": "<string>",
"device_id": "<string>",
"properties": {},
"attributes": {}
}
headers = {
"Authorization": "<api-key>",
"X-App-ID": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<api-key>',
'X-App-ID': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
session_id: '<string>',
type: 'track',
event: 'Conversation Started',
conversation_id: '<string>',
timestamp: '<string>',
user_id: '<string>',
device_id: '<string>',
properties: {},
attributes: {}
})
};
fetch('https://app.mindlytics.ai/bc/v1/events/event/start-conversation', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.mindlytics.ai/bc/v1/events/event/start-conversation",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'session_id' => '<string>',
'type' => 'track',
'event' => 'Conversation Started',
'conversation_id' => '<string>',
'timestamp' => '<string>',
'user_id' => '<string>',
'device_id' => '<string>',
'properties' => [
],
'attributes' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json",
"X-App-ID: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.mindlytics.ai/bc/v1/events/event/start-conversation"
payload := strings.NewReader("{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("X-App-ID", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.mindlytics.ai/bc/v1/events/event/start-conversation")
.header("Authorization", "<api-key>")
.header("X-App-ID", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.mindlytics.ai/bc/v1/events/event/start-conversation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["X-App-ID"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"session_id\": \"<string>\",\n \"type\": \"track\",\n \"event\": \"Conversation Started\",\n \"conversation_id\": \"<string>\",\n \"timestamp\": \"<string>\",\n \"user_id\": \"<string>\",\n \"device_id\": \"<string>\",\n \"properties\": {},\n \"attributes\": {}\n}"
response = http.request(request)
puts response.read_body[
{
"type": "start_session"
}
]Authorizations
API Key for your organization
Project ID
Body
application/json
A unique session ID generated by caller
The event that tracks an arbitray event
Available options:
track The event that starts a conversation
Available options:
Conversation Started The ID of the conversation
The timestamp of the event, defaults to "now" if not specified.
The unique ID of the user
The ID of the device, if applicable
Any additional properties to be associated with the event
Show child attributes
Show child attributes
Any additional attributes to be associated with the conversation
Show child attributes
Show child attributes
⌘I