Get chat conversation
curl --request GET \
--url https://api.qa.tech/v1/chat/{chatConversationShortId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.qa.tech/v1/chat/{chatConversationShortId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.qa.tech/v1/chat/{chatConversationShortId}', 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.qa.tech/v1/chat/{chatConversationShortId}",
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: Bearer <token>"
],
]);
$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.qa.tech/v1/chat/{chatConversationShortId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.qa.tech/v1/chat/{chatConversationShortId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qa.tech/v1/chat/{chatConversationShortId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"shortId": "<string>",
"url": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"title": "<string>",
"source": "api",
"messages": [
{
"id": "<string>",
"role": "user",
"createdAt": "2023-11-07T05:31:56Z",
"text": "<string>",
"status": "INITIATED",
"isStreaming": true
}
]
}Chat
Get chat conversation
Get conversation metadata and recent messages (newest first).
Use limit to control how many messages are returned (default 20). To detect when an
assistant reply is finished, poll until the most recent assistant message has
status: 'COMPLETED' (or CANCELLED/FAILED).
GET
/
v1
/
chat
/
{chatConversationShortId}
Get chat conversation
curl --request GET \
--url https://api.qa.tech/v1/chat/{chatConversationShortId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.qa.tech/v1/chat/{chatConversationShortId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.qa.tech/v1/chat/{chatConversationShortId}', 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.qa.tech/v1/chat/{chatConversationShortId}",
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: Bearer <token>"
],
]);
$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.qa.tech/v1/chat/{chatConversationShortId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.qa.tech/v1/chat/{chatConversationShortId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qa.tech/v1/chat/{chatConversationShortId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"shortId": "<string>",
"url": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"title": "<string>",
"source": "api",
"messages": [
{
"id": "<string>",
"role": "user",
"createdAt": "2023-11-07T05:31:56Z",
"text": "<string>",
"status": "INITIATED",
"isStreaming": true
}
]
}Path Parameters
Pattern:
^chat(-.+_.+|_.+)$Query Parameters
Show child attributes
Show child attributes
Response
200 - application/json
The request has succeeded.
Conversation data with recent messages (newest first).
Pattern:
^chat(-.+_.+|_.+)$Dashboard URL for the conversation.
Where the conversation originated. api for conversations created via this API, ui for the dashboard, github/gitlab for VCS-triggered chats, and system for everything else.
Available options:
api, ui, github, gitlab, system Recent messages, newest first. Empty on creation; poll get_chat_conversation to retrieve.
Show child attributes
Show child attributes
Was this page helpful?