curl --request GET \
--url https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id} \
--header 'Authorization: <api-key>'import requests
url = "https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}', 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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}",
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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}"
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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}")
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": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"agent_id": "<string>",
"thread_id": "<string>",
"status": "queued",
"model": "<string>",
"temperature": 123,
"top_p": 123,
"parallel_tool_calls": true,
"object": "thread.run",
"is_active": false,
"started_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"cancelled_at": "2023-11-07T05:31:56Z",
"failed_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"instructions": "<string>",
"tools": [
{}
],
"meta_data": {},
"usage": {
"prompt_tokens": 123,
"completion_tokens": 123,
"total_tokens": 123
},
"max_completion_tokens": 123,
"truncation_strategy": {},
"response_format": "auto",
"tool_choice": "auto"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Get run
Get a run by ID.
curl --request GET \
--url https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id} \
--header 'Authorization: <api-key>'import requests
url = "https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}', 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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}",
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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}"
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://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://flow.seekr.com/v1/threads/{thread_id}/runs/{run_id}")
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": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"agent_id": "<string>",
"thread_id": "<string>",
"status": "queued",
"model": "<string>",
"temperature": 123,
"top_p": 123,
"parallel_tool_calls": true,
"object": "thread.run",
"is_active": false,
"started_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"cancelled_at": "2023-11-07T05:31:56Z",
"failed_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"instructions": "<string>",
"tools": [
{}
],
"meta_data": {},
"usage": {
"prompt_tokens": 123,
"completion_tokens": 123,
"total_tokens": 123
},
"max_completion_tokens": 123,
"truncation_strategy": {},
"response_format": "auto",
"tool_choice": "auto"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Your Seekr API key, sent in the Authorization header with no 'Bearer' prefix.
Headers
ID of the team to use for the request. If omitted, the request uses your personal workspace.
Response
Success
Represents a single execution within a thread.
A run encompasses the entire lifecycle of processing, from receiving the initial prompt to delivering the final response. Runs track execution status, timing, model parameters, and resource usage.
ID of the run.
Time the resource was created, in ISO 8601 format.
ID of the agent.
ID of the thread.
Available status for a run.
queued, running, completed, failed, canceled, cancelled ID of the output model selected for the run.
Sampling temperature. Higher values make the output more random, and lower values make it more focused and repeatable.
Nucleus sampling. The model samples only from the smallest set of tokens whose combined probability reaches this value.
If true, the model can call more than one tool in a single turn.
Object type. Always thread.run.
Whether this run currently holds the thread for execution.
Time the run started, in ISO 8601 format.
Time the run expires, in ISO 8601 format.
Time the run was cancelled, in ISO 8601 format.
Time the run failed, in ISO 8601 format.
Time the run completed, in ISO 8601 format.
Instructions the agent follows for this run.
Tools the model can call.
Metadata recorded for the run, including the resolved model configuration.
Token usage for the run.
Show child attributes
Show child attributes
Maximum number of tokens to generate in the completion.
Prompt-truncation configuration recorded for the run. Empty when no strategy is recorded.
Format the model must use for its output.
Controls whether and which tool the model calls.