List Batches
GET
/
v1
/
batches
List Batches
curl --request GET \
--url https://api.neosantara.xyz/v1/batches \
--header 'x-api-key: <api-key>'import requests
url = "https://api.neosantara.xyz/v1/batches"
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.neosantara.xyz/v1/batches', 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.neosantara.xyz/v1/batches",
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.neosantara.xyz/v1/batches"
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.neosantara.xyz/v1/batches")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neosantara.xyz/v1/batches")
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{
"object": "<string>",
"data": [
{
"id": "<string>",
"object": "<string>",
"endpoint": "<string>",
"errors": {},
"input_file_id": "<string>",
"completion_window": "<string>",
"status": "<string>",
"output_file_id": {},
"error_file_id": {},
"created_at": 123,
"in_progress_at": {},
"expires_at": 123,
"finalizing_at": {},
"completed_at": {},
"failed_at": {},
"expired_at": {},
"cancelled_at": {},
"request_counts": {},
"metadata": {}
}
],
"first_id": {},
"last_id": {},
"has_more": true
}List all batch jobs for the authenticated user, ordered by creation time (newest first).
integer
default:"20"
The maximum number of batches to return. The API may return fewer batches than the specified limit.
string
A cursor for pagination. Use the ID of the last batch from the previous page to get the next page of results.
Returns
string
The object type, which is always
list.array
An array of batch objects.
Show batch object properties
Show batch object properties
string
The unique identifier of the batch.
string
The object type, always
batch.string
The API endpoint used for the batch.
object or null
Any errors encountered.
string
The input file ID.
string
The completion time window.
string
The current batch status.
string or null
The output file ID if available.
string or null
The error file ID if available.
integer
Unix timestamp of creation.
integer or null
Unix timestamp when processing started.
integer
Unix timestamp of expiration.
integer or null
Unix timestamp when finalizing started.
integer or null
Unix timestamp of completion.
integer or null
Unix timestamp of failure.
integer or null
Unix timestamp of expiration.
integer or null
Unix timestamp of cancellation.
object
Request statistics.
object
Custom metadata.
string or null
The ID of the first batch in the list, useful for pagination.
string or null
The ID of the last batch in the list, useful for pagination.
boolean
Indicates whether there are more batches available beyond this page.
{
"object": "list",
"data": [
{
"id": "batch-abc123",
"object": "batch",
"endpoint": "/v1/chat/completions",
"errors": null,
"input_file_id": "file-xyz789",
"completion_window": "24h",
"status": "completed",
"output_file_id": "file-output-123",
"error_file_id": "file-errors-456",
"created_at": 1699564800,
"in_progress_at": 1699565000,
"expires_at": 1699651200,
"finalizing_at": 1699568000,
"completed_at": 1699568500,
"failed_at": null,
"expired_at": null,
"cancelled_at": null,
"request_counts": {
"total": 100,
"completed": 98,
"failed": 2
},
"metadata": {
"project": "data-analysis"
}
},
{
"id": "batch-def456",
"object": "batch",
"endpoint": "/v1/embeddings",
"errors": null,
"input_file_id": "file-abc999",
"completion_window": "24h",
"status": "in_progress",
"output_file_id": null,
"error_file_id": null,
"created_at": 1699550000,
"in_progress_at": 1699550200,
"expires_at": 1699636400,
"finalizing_at": null,
"completed_at": null,
"failed_at": null,
"expired_at": null,
"cancelled_at": null,
"request_counts": {
"total": 50,
"completed": 30,
"failed": 0
},
"metadata": {}
}
],
"first_id": "batch-abc123",
"last_id": "batch-def456",
"has_more": false
}
{
"object": "list",
"data": [],
"first_id": null,
"last_id": null,
"has_more": false
}
Last modified on December 7, 2025
⌘I
List Batches
curl --request GET \
--url https://api.neosantara.xyz/v1/batches \
--header 'x-api-key: <api-key>'import requests
url = "https://api.neosantara.xyz/v1/batches"
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.neosantara.xyz/v1/batches', 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.neosantara.xyz/v1/batches",
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.neosantara.xyz/v1/batches"
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.neosantara.xyz/v1/batches")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.neosantara.xyz/v1/batches")
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{
"object": "<string>",
"data": [
{
"id": "<string>",
"object": "<string>",
"endpoint": "<string>",
"errors": {},
"input_file_id": "<string>",
"completion_window": "<string>",
"status": "<string>",
"output_file_id": {},
"error_file_id": {},
"created_at": 123,
"in_progress_at": {},
"expires_at": 123,
"finalizing_at": {},
"completed_at": {},
"failed_at": {},
"expired_at": {},
"cancelled_at": {},
"request_counts": {},
"metadata": {}
}
],
"first_id": {},
"last_id": {},
"has_more": true
}