curl --request GET \
--url https://api.usesimple.ai/api/v1/interactions/{uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://api.usesimple.ai/api/v1/interactions/{uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.usesimple.ai/api/v1/interactions/{uuid}', 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://api.usesimple.ai/api/v1/interactions/{uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.usesimple.ai/api/v1/interactions/{uuid}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.usesimple.ai/api/v1/interactions/{uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.usesimple.ai/api/v1/interactions/{uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "call",
"status": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"transcripts": [
{
"text": "<string>",
"role": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"function_name": "<string>",
"arguments": {}
}
],
"modality": "voice",
"language": "en",
"from_number": "<string>",
"to_number": "<string>",
"transferred": true,
"handoff_metadata": {
"five9": {
"conversation_id": "<string>",
"tenant_name": "<string>",
"campaign_name": "<string>",
"transferred_at": "2023-11-07T05:31:56Z"
}
},
"direction": "<string>",
"tags": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"color": "<string>"
}
],
"ended_at": "2023-11-07T05:31:56Z",
"duration": 123,
"external_identifiers": {},
"params": {},
"recording_presigned_url": "<string>",
"answered_by": "voicemail",
"analyzers": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "<string>",
"output_config": {
"type": "string",
"properties": {}
}
}
],
"analysis_results": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"analyzer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "<string>",
"output_config": {},
"result": {}
}
],
"summary": "<string>"
}{
"error": "Interaction not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Get a Voice or Text Interaction with the API
Retrieve a specific Simple AI voice or text interaction by UUID, including the channel-specific data available for that session.
curl --request GET \
--url https://api.usesimple.ai/api/v1/interactions/{uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://api.usesimple.ai/api/v1/interactions/{uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.usesimple.ai/api/v1/interactions/{uuid}', 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://api.usesimple.ai/api/v1/interactions/{uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.usesimple.ai/api/v1/interactions/{uuid}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.usesimple.ai/api/v1/interactions/{uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.usesimple.ai/api/v1/interactions/{uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "call",
"status": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"transcripts": [
{
"text": "<string>",
"role": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"function_name": "<string>",
"arguments": {}
}
],
"modality": "voice",
"language": "en",
"from_number": "<string>",
"to_number": "<string>",
"transferred": true,
"handoff_metadata": {
"five9": {
"conversation_id": "<string>",
"tenant_name": "<string>",
"campaign_name": "<string>",
"transferred_at": "2023-11-07T05:31:56Z"
}
},
"direction": "<string>",
"tags": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"color": "<string>"
}
],
"ended_at": "2023-11-07T05:31:56Z",
"duration": 123,
"external_identifiers": {},
"params": {},
"recording_presigned_url": "<string>",
"answered_by": "voicemail",
"analyzers": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "<string>",
"output_config": {
"type": "string",
"properties": {}
}
}
],
"analysis_results": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"analyzer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "<string>",
"output_config": {},
"result": {}
}
],
"summary": "<string>"
}{
"error": "Interaction not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Path Parameters
Response
Successful Response
Identifies whether the interaction is a native call/conversation or an external-channel interaction.
call, conversation, email, sms, external_channel For native interactions this is the record creation time. For external-channel interactions this is the underlying session's ingestion time. Note: created_at sorting and the created_at_gte/created_at_lte filters order external-channel interactions by their call (leg start) time, not by this ingestion timestamp, so a returned created_at value may fall outside the requested filter window.
Time the interaction record was last updated. For external-channel interactions this is the underlying session's last update time.
Transcript item shape depends on the interaction type.
- CallTranscriptResponse
- ExternalChannelTranscriptResponse
Show child attributes
Show child attributes
Native interactions return voice or text. External-channel interactions return null.
voice, text The language to use for the call - English (en) or Spanish (es)
en, es, ar Phone number for native interactions. External-channel interactions return null.
Phone number for native interactions. External-channel interactions return null.
Indicates if the interaction was transferred. External-channel interactions return null.
Metadata about a transfer to an external provider.
Show child attributes
Show child attributes
The direction of the interaction (inbound/outbound). External-channel interactions return null.
Tags associated with the interaction
Show child attributes
Show child attributes
External identifiers associated with the interaction
Show child attributes
Show child attributes
Parameters associated with the interaction
Show child attributes
Show child attributes
Presigned URL for the recording (for voice modality only). External-channel interactions return null.
Indicates how the call was answered - by a human, voicemail, or if there was no answer
voicemail, human, no_answer, unknown List of analyzers configured for this interaction
Show child attributes
Show child attributes
Results from analyzers that have completed
Show child attributes
Show child attributes
The summary of the interaction if available