Create
curl --request POST \
--url https://{defaultHost}/v1/batches \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"batch": {
"batch_operations": [
{
"http_method": "GET",
"path": "/v1/products"
},
{
"http_method": "POST",
"path": "/v1/products",
"body": {
"product": {
"name": "Test"
}
}
}
]
}
}
'import requests
url = "https://{defaultHost}/v1/batches"
payload = { "batch": { "batch_operations": [
{
"http_method": "GET",
"path": "/v1/products"
},
{
"http_method": "POST",
"path": "/v1/products",
"body": { "product": { "name": "Test" } }
}
] } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
batch: {
batch_operations: [
{http_method: 'GET', path: '/v1/products'},
{
http_method: 'POST',
path: '/v1/products',
body: JSON.stringify({product: {name: 'Test'}})
}
]
}
})
};
fetch('https://{defaultHost}/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://{defaultHost}/v1/batches",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'batch' => [
'batch_operations' => [
[
'http_method' => 'GET',
'path' => '/v1/products'
],
[
'http_method' => 'POST',
'path' => '/v1/products',
'body' => [
'product' => [
'name' => 'Test'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{defaultHost}/v1/batches"
payload := strings.NewReader("{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{defaultHost}/v1/batches")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{defaultHost}/v1/batches")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "0892c43a-b5f9-48dc-94a0-83d177dac708",
"object": "batch",
"finished_batch_operations_count": 0,
"batch_operations_count": 2,
"status": "in_progress",
"created_at": 1782485806,
"updated_at": 1782485806
}Batches
Create
Creates a new batch.
POST
/
v1
/
batches
Create
curl --request POST \
--url https://{defaultHost}/v1/batches \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"batch": {
"batch_operations": [
{
"http_method": "GET",
"path": "/v1/products"
},
{
"http_method": "POST",
"path": "/v1/products",
"body": {
"product": {
"name": "Test"
}
}
}
]
}
}
'import requests
url = "https://{defaultHost}/v1/batches"
payload = { "batch": { "batch_operations": [
{
"http_method": "GET",
"path": "/v1/products"
},
{
"http_method": "POST",
"path": "/v1/products",
"body": { "product": { "name": "Test" } }
}
] } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
batch: {
batch_operations: [
{http_method: 'GET', path: '/v1/products'},
{
http_method: 'POST',
path: '/v1/products',
body: JSON.stringify({product: {name: 'Test'}})
}
]
}
})
};
fetch('https://{defaultHost}/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://{defaultHost}/v1/batches",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'batch' => [
'batch_operations' => [
[
'http_method' => 'GET',
'path' => '/v1/products'
],
[
'http_method' => 'POST',
'path' => '/v1/products',
'body' => [
'product' => [
'name' => 'Test'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{defaultHost}/v1/batches"
payload := strings.NewReader("{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{defaultHost}/v1/batches")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{defaultHost}/v1/batches")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"batch\": {\n \"batch_operations\": [\n {\n \"http_method\": \"GET\",\n \"path\": \"/v1/products\"\n },\n {\n \"http_method\": \"POST\",\n \"path\": \"/v1/products\",\n \"body\": {\n \"product\": {\n \"name\": \"Test\"\n }\n }\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "0892c43a-b5f9-48dc-94a0-83d177dac708",
"object": "batch",
"finished_batch_operations_count": 0,
"batch_operations_count": 2,
"status": "in_progress",
"created_at": 1782485806,
"updated_at": 1782485806
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Show child attributes
Show child attributes
Response
200 - application/json
Success
The UUID of the specific object.
A string describing the object type returned.
The number of operations that have finished processing (completed, failed, or timed out).
The total number of operations in this batch.
The status of the batch. Possible values include:
completed: All operations in the batch have finished processing.in_progress: The batch operations are currently being executed.pending: The batch has been created but processing has not yet started.
Expandable – Property not returned unless expanded.
Time at which the object was created. Measured in seconds since the Unix epoch.
Time at which the object was last updated. Measured in seconds since the Unix epoch.
Was this page helpful?
⌘I