curl --request GET \
--url https://api.sigmamind.ai/v1/batch-runs/{batchId} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.sigmamind.ai/v1/batch-runs/{batchId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.sigmamind.ai/v1/batch-runs/{batchId}', 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.sigmamind.ai/v1/batch-runs/{batchId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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.sigmamind.ai/v1/batch-runs/{batchId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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.sigmamind.ai/v1/batch-runs/{batchId}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sigmamind.ai/v1/batch-runs/{batchId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"batchId": "batch_s0OJu2JWR8R45Fai",
"workspaceId": "org_V6eZ2zg8ziDx5pft",
"agent": {
"name": "New AI Agent",
"agentId": "agent_D5D0p7TUs66TTAEAx",
"status": "Live"
},
"createdDate": "2026-03-26T10:52:45.565Z",
"testCases": [
{
"testCaseId": "tc_d17T6uReChpyfFeP",
"label": "Angry Customer - Cancellation Flow",
"agent": {
"name": "New AI Agent",
"agentId": "agent_D5D0p7TUs66TTAEAx",
"status": "Live"
},
"workspaceId": "org_V6eZ2zg8ziDx5pft",
"llmModel": "gpt-4o-mini",
"mockData": [
{
"variableName": "customer_name",
"value": "John Doe"
},
{
"variableName": "account_status",
"value": "active"
}
],
"userPrompt": "You are an angry customer who wants to cancel your subscription.",
"attempt": 5,
"successCriteria": "The agent should acknowledge the cancellation request, present retention alternatives, and confirm the cancellation if the customer insists."
}
],
"successfulAttempts": 4,
"failedAttempts": 1,
"totalAttempts": 5
}{
"error": "Bad Request",
"message": "Invalid request parameters",
"path": "/v1/batch-runs",
"status": 400,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Unauthorized",
"message": "X-API-Key is missing or invalid",
"path": "/v1/batch-runs",
"status": 401,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Forbidden",
"message": "Access denied for this resource",
"path": "/v1/batch-runs",
"status": 403,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Not Found",
"message": "The requested resource was not found",
"path": "/v1/batch-runs",
"status": 404,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Internal Server Error",
"message": "Unexpected server error",
"path": "/v1/batch-runs",
"status": 500,
"timestamp": "2026-05-05T10:06:43.890Z"
}Get Batch Run
Retrieves the full details of a batch run by batchId, scoped to the specified agent. Returns overall batch status, test case count, pass/fail summary, and individual run results.
curl --request GET \
--url https://api.sigmamind.ai/v1/batch-runs/{batchId} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.sigmamind.ai/v1/batch-runs/{batchId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.sigmamind.ai/v1/batch-runs/{batchId}', 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.sigmamind.ai/v1/batch-runs/{batchId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <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.sigmamind.ai/v1/batch-runs/{batchId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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.sigmamind.ai/v1/batch-runs/{batchId}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sigmamind.ai/v1/batch-runs/{batchId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"batchId": "batch_s0OJu2JWR8R45Fai",
"workspaceId": "org_V6eZ2zg8ziDx5pft",
"agent": {
"name": "New AI Agent",
"agentId": "agent_D5D0p7TUs66TTAEAx",
"status": "Live"
},
"createdDate": "2026-03-26T10:52:45.565Z",
"testCases": [
{
"testCaseId": "tc_d17T6uReChpyfFeP",
"label": "Angry Customer - Cancellation Flow",
"agent": {
"name": "New AI Agent",
"agentId": "agent_D5D0p7TUs66TTAEAx",
"status": "Live"
},
"workspaceId": "org_V6eZ2zg8ziDx5pft",
"llmModel": "gpt-4o-mini",
"mockData": [
{
"variableName": "customer_name",
"value": "John Doe"
},
{
"variableName": "account_status",
"value": "active"
}
],
"userPrompt": "You are an angry customer who wants to cancel your subscription.",
"attempt": 5,
"successCriteria": "The agent should acknowledge the cancellation request, present retention alternatives, and confirm the cancellation if the customer insists."
}
],
"successfulAttempts": 4,
"failedAttempts": 1,
"totalAttempts": 5
}{
"error": "Bad Request",
"message": "Invalid request parameters",
"path": "/v1/batch-runs",
"status": 400,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Unauthorized",
"message": "X-API-Key is missing or invalid",
"path": "/v1/batch-runs",
"status": 401,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Forbidden",
"message": "Access denied for this resource",
"path": "/v1/batch-runs",
"status": 403,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Not Found",
"message": "The requested resource was not found",
"path": "/v1/batch-runs",
"status": 404,
"timestamp": "2026-05-05T10:06:43.890Z"
}{
"error": "Internal Server Error",
"message": "Unexpected server error",
"path": "/v1/batch-runs",
"status": 500,
"timestamp": "2026-05-05T10:06:43.890Z"
}Authorizations
Authenticate every request by passing your API key in the X-API-Key header. To get your key, go to Dashboard → API Keys and create or copy your Production API key.
Path Parameters
The unique identifier of the batch run to retrieve.
Query Parameters
Unique identifier of the agent to which the batch run belongs.
Response
OK
List of items for the current page. Contains up to 'size' number of records.
The unique identifier of the batch run.
"batch_s0OJu2JWR8R45Fai"
The unique identifier of the workspace under which the batch run was created.
"org_V6eZ2zg8ziDx5pft"
Agent assigned to handle all calls in this campaign. Contains the agent's ID, name, and current status. All contacts in the campaign's contact list will be called using this agent.
Show child attributes
Show child attributes
The UTC timestamp indicating when the batch run was created.
"2026-03-26T10:52:45.565Z"
The list of test cases included in this batch run, along with their individual simulation results.
Show child attributes
Show child attributes
The total number of simulation attempts across all test cases in this batch run that were evaluated as successful.
4
The total number of simulation attempts across all test cases in this batch run that were evaluated as failed.
1
The total number of simulation attempts executed across all test cases in this batch run.
5