curl --request POST \
--url https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"childTableId": 123,
"displayIndex": 123,
"values": {},
"id": "<string>",
"name": "<string>",
"path": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace"
payload = { "inputs": [
{
"childTableId": 123,
"displayIndex": 123,
"values": {},
"id": "<string>",
"name": "<string>",
"path": "<string>"
}
] }
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({
inputs: [
{
childTableId: 123,
displayIndex: 123,
values: {},
id: '<string>',
name: '<string>',
path: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace', 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.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace",
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([
'inputs' => [
[
'childTableId' => 123,
'displayIndex' => 123,
'values' => [
],
'id' => '<string>',
'name' => '<string>',
'path' => '<string>'
]
]
]),
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://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\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://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace")
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 \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"childTableId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"path": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"values": {}
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"childTableId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"path": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"values": {}
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"errors": [
{
"category": "<string>",
"context": {},
"errors": [
{
"message": "<string>",
"code": "<string>",
"context": "{invalidPropertyName=[propertyValue], missingScopes=[scope1, scope2]}",
"in": "<string>",
"subCategory": "<string>"
}
],
"links": {},
"message": "<string>",
"status": "<string>",
"id": "<string>",
"subCategory": {}
}
],
"links": {},
"numErrors": 123,
"requestedAt": "2023-11-07T05:31:56Z"
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Replace rows in batch in draft table
Ersetzt mehrere Zeilen im Batch in der Entwurfsversion der Tabelle. Maximal 100 Zeilen pro Aufruf. Details zum Aktualisieren einer einzelnen Zeile finden Sie im Endpunkt „PUT /tables//rows//draft“.
curl --request POST \
--url https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"childTableId": 123,
"displayIndex": 123,
"values": {},
"id": "<string>",
"name": "<string>",
"path": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace"
payload = { "inputs": [
{
"childTableId": 123,
"displayIndex": 123,
"values": {},
"id": "<string>",
"name": "<string>",
"path": "<string>"
}
] }
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({
inputs: [
{
childTableId: 123,
displayIndex: 123,
values: {},
id: '<string>',
name: '<string>',
path: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace', 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.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace",
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([
'inputs' => [
[
'childTableId' => 123,
'displayIndex' => 123,
'values' => [
],
'id' => '<string>',
'name' => '<string>',
'path' => '<string>'
]
]
]),
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://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\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://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/cms/hubdb/2026-09/tables/{tableIdOrName}/rows/draft/batch/replace")
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 \"inputs\": [\n {\n \"childTableId\": 123,\n \"displayIndex\": 123,\n \"values\": {},\n \"id\": \"<string>\",\n \"name\": \"<string>\",\n \"path\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"childTableId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"path": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"values": {}
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"childTableId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"name": "<string>",
"path": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"values": {}
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"errors": [
{
"category": "<string>",
"context": {},
"errors": [
{
"message": "<string>",
"code": "<string>",
"context": "{invalidPropertyName=[propertyValue], missingScopes=[scope1, scope2]}",
"in": "<string>",
"subCategory": "<string>"
}
],
"links": {},
"message": "<string>",
"status": "<string>",
"id": "<string>",
"subCategory": {}
}
],
"links": {},
"numErrors": 123,
"requestedAt": "2023-11-07T05:31:56Z"
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Supported products
Supported products
Required Scopes
Required Scopes
Autorisierungen
The access token received from the authorization server in the OAuth 2.0 flow.
- Authorization URL
- https://app.hubspot.com/oauth/authorize
- Token URL
- https://api.hubapi.com/oauth/v1/token
Pfadparameter
Die eindeutige ID oder der Name der HubDB-Tabelle, in der die Entwurfszeilen überschrieben werden.
Body
Ein Array von HubDbTableRowV3BatchUpdateRequest-Objekten, die jeweils Details für eine Zeilenaktualisierung enthalten. Diese Eigenschaft ist erforderlich.
Show child attributes
Show child attributes
Antwort
successful operation
Der Zeitstempel, der angibt, wann die Batch-Verarbeitung abgeschlossen wurde.
Ein Array von HubDbTableRowV3-Objekten, die die Ergebnisse des Batch-Vorgangs darstellen.
Show child attributes
Show child attributes
Der Zeitstempel, der angibt, wann die Batch-Verarbeitung begonnen hat.
Der aktuelle Status des Batch-Vorgangs mit den möglichen Werten: CANCELED, COMPLETE, PENDING, PROCESSING.
CANCELED, COMPLETE, PENDING, PROCESSING Eine Sammlung von zugehörigen Links, die der Batch-Antwort zugeordnet sind.
Show child attributes
Show child attributes
Der Zeitstempel, der angibt, wann die Batch-Anfrage erfolgt ist.