curl --request POST \
--url https://api.hubapi.com/crm/objects/2026-09/fees/batch/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"associations": [
{
"to": {
"id": "<string>"
},
"types": [
{
"associationTypeId": 123
}
]
}
],
"properties": {},
"objectWriteTraceId": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/crm/objects/2026-09/fees/batch/create"
payload = { "inputs": [
{
"associations": [
{
"to": { "id": "<string>" },
"types": [{ "associationTypeId": 123 }]
}
],
"properties": {},
"objectWriteTraceId": "<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: [
{
associations: [{to: {id: '<string>'}, types: [{associationTypeId: 123}]}],
properties: {},
objectWriteTraceId: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/crm/objects/2026-09/fees/batch/create', 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/crm/objects/2026-09/fees/batch/create",
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' => [
[
'associations' => [
[
'to' => [
'id' => '<string>'
],
'types' => [
[
'associationTypeId' => 123
]
]
]
],
'properties' => [
],
'objectWriteTraceId' => '<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/crm/objects/2026-09/fees/batch/create"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<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/crm/objects/2026-09/fees/batch/create")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/objects/2026-09/fees/batch/create")
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 \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"archived": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"properties": {},
"updatedAt": "2023-11-07T05:31:56Z",
"archivedAt": "2023-11-07T05:31:56Z",
"objectWriteTraceId": "<string>",
"propertiesWithHistory": {},
"url": "<string>",
"warnings": [
{
"category": "<string>",
"context": {},
"message": "<string>"
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"archived": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"properties": {},
"updatedAt": "2023-11-07T05:31:56Z",
"archivedAt": "2023-11-07T05:31:56Z",
"objectWriteTraceId": "<string>",
"propertiesWithHistory": {},
"url": "<string>",
"warnings": [
{
"category": "<string>",
"context": {},
"message": "<string>"
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"errors": [
{
"category": "<string>",
"context": {},
"errors": [
{
"message": "<string>",
"code": "<string>",
"context": "{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"
}
}Create fees
Créer un lot d’objets CRM d’un type spécifié dans HubSpot. Ce point de terminaison vous permet de créer plusieurs objets en une seule requête, ce qui simplifie le processus de remplissage de votre CRM avec de nouvelles données. Chaque objet doit avoir les propriétés nécessaires définies, et la réponse inclura les objets créés ainsi que leurs identifiants.
curl --request POST \
--url https://api.hubapi.com/crm/objects/2026-09/fees/batch/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"associations": [
{
"to": {
"id": "<string>"
},
"types": [
{
"associationTypeId": 123
}
]
}
],
"properties": {},
"objectWriteTraceId": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/crm/objects/2026-09/fees/batch/create"
payload = { "inputs": [
{
"associations": [
{
"to": { "id": "<string>" },
"types": [{ "associationTypeId": 123 }]
}
],
"properties": {},
"objectWriteTraceId": "<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: [
{
associations: [{to: {id: '<string>'}, types: [{associationTypeId: 123}]}],
properties: {},
objectWriteTraceId: '<string>'
}
]
})
};
fetch('https://api.hubapi.com/crm/objects/2026-09/fees/batch/create', 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/crm/objects/2026-09/fees/batch/create",
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' => [
[
'associations' => [
[
'to' => [
'id' => '<string>'
],
'types' => [
[
'associationTypeId' => 123
]
]
]
],
'properties' => [
],
'objectWriteTraceId' => '<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/crm/objects/2026-09/fees/batch/create"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<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/crm/objects/2026-09/fees/batch/create")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/objects/2026-09/fees/batch/create")
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 \"associations\": [\n {\n \"to\": {\n \"id\": \"<string>\"\n },\n \"types\": [\n {\n \"associationTypeId\": 123\n }\n ]\n }\n ],\n \"properties\": {},\n \"objectWriteTraceId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"archived": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"properties": {},
"updatedAt": "2023-11-07T05:31:56Z",
"archivedAt": "2023-11-07T05:31:56Z",
"objectWriteTraceId": "<string>",
"propertiesWithHistory": {},
"url": "<string>",
"warnings": [
{
"category": "<string>",
"context": {},
"message": "<string>"
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"archived": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"properties": {},
"updatedAt": "2023-11-07T05:31:56Z",
"archivedAt": "2023-11-07T05:31:56Z",
"objectWriteTraceId": "<string>",
"propertiesWithHistory": {},
"url": "<string>",
"warnings": [
{
"category": "<string>",
"context": {},
"message": "<string>"
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"errors": [
{
"category": "<string>",
"context": {},
"errors": [
{
"message": "<string>",
"code": "<string>",
"context": "{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
Autorisations
The access token received from the authorization server in the OAuth 2.0 flow.
Corps
Représente une entrée de lot pour la création de plusieurs objets publics simples en une seule requête. Ce composant est utilisé pour rationaliser le processus d'ajout de nouveaux objets à un compte HubSpot en permettant la création de plusieurs entrées à la fois.
Un tableau d'objets à créer, chacun représenté par un SimplePublicObjectBatchInputForCreate. Chaque objet comprend les propriétés et les associations nécessaires à la création.
Show child attributes
Show child attributes
Réponse
successful operation
Objet de réponse de lot d'objet public
La date et l'heure auxquelles l'opération de lot a été effectuée, au format ISO 8601.
Un tableau d'éléments SimplePublicObject représentant les résultats de l'opération par lot.
Show child attributes
Show child attributes
La date et l'heure de début de l'opération par lot, au format ISO 8601.
Le statut actuel de l'opération par lot. Les valeurs valides incluent « PENDING », « PROCESSING », « CANCELED » et « COMPLETE ».
CANCELED, COMPLETE, PENDING, PROCESSING Une carte des noms de liens vers les URI associées, fournissant des informations ou des actions supplémentaires liées à l'opération de lot.
Show child attributes
Show child attributes
La date et l'heure auxquelles l'opération de lot a été demandée, au format ISO 8601.