curl --request POST \
--url https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"objectTypeId": "<string>",
"recordId": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read"
payload = { "inputs": [
{
"objectTypeId": "<string>",
"recordId": "<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: [{objectTypeId: '<string>', recordId: '<string>'}]})
};
fetch('https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read', 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/lists/2026-09/records/memberships/batch/read",
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' => [
[
'objectTypeId' => '<string>',
'recordId' => '<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/lists/2026-09/records/memberships/batch/read"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"objectTypeId\": \"<string>\",\n \"recordId\": \"<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/lists/2026-09/records/memberships/batch/read")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"objectTypeId\": \"<string>\",\n \"recordId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read")
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 \"objectTypeId\": \"<string>\",\n \"recordId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"objectTypeId": "<string>",
"recordId": "<string>",
"recordListMemberships": [
{
"firstAddedTimestamp": "2023-11-07T05:31:56Z",
"lastAddedTimestamp": "2023-11-07T05:31:56Z",
"listId": "<string>",
"listVersion": 123,
"isPublicList": true
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"objectTypeId": "<string>",
"recordId": "<string>",
"recordListMemberships": [
{
"firstAddedTimestamp": "2023-11-07T05:31:56Z",
"lastAddedTimestamp": "2023-11-07T05:31:56Z",
"listId": "<string>",
"listVersion": 123,
"isPublicList": true
}
]
}
],
"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"
}
}Batch read memberships
Récupérer les informations de contrôle d’accès par lot pour les fiches d’informations au sein de listes spécifiées. Ce point de terminaison est utile pour obtenir les détails de contrôle d’accès en masse, permettant une récupération efficace des données lors du traitement de plusieurs fiches d’informations.
curl --request POST \
--url https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"inputs": [
{
"objectTypeId": "<string>",
"recordId": "<string>"
}
]
}
'import requests
url = "https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read"
payload = { "inputs": [
{
"objectTypeId": "<string>",
"recordId": "<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: [{objectTypeId: '<string>', recordId: '<string>'}]})
};
fetch('https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read', 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/lists/2026-09/records/memberships/batch/read",
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' => [
[
'objectTypeId' => '<string>',
'recordId' => '<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/lists/2026-09/records/memberships/batch/read"
payload := strings.NewReader("{\n \"inputs\": [\n {\n \"objectTypeId\": \"<string>\",\n \"recordId\": \"<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/lists/2026-09/records/memberships/batch/read")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"inputs\": [\n {\n \"objectTypeId\": \"<string>\",\n \"recordId\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/lists/2026-09/records/memberships/batch/read")
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 \"objectTypeId\": \"<string>\",\n \"recordId\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"objectTypeId": "<string>",
"recordId": "<string>",
"recordListMemberships": [
{
"firstAddedTimestamp": "2023-11-07T05:31:56Z",
"lastAddedTimestamp": "2023-11-07T05:31:56Z",
"listId": "<string>",
"listVersion": 123,
"isPublicList": true
}
]
}
],
"startedAt": "2023-11-07T05:31:56Z",
"status": "CANCELED",
"links": {},
"requestedAt": "2023-11-07T05:31:56Z"
}{
"completedAt": "2023-11-07T05:31:56Z",
"results": [
{
"objectTypeId": "<string>",
"recordId": "<string>",
"recordListMemberships": [
{
"firstAddedTimestamp": "2023-11-07T05:31:56Z",
"lastAddedTimestamp": "2023-11-07T05:31:56Z",
"listId": "<string>",
"listVersion": 123,
"isPublicList": true
}
]
}
],
"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
Un tableau d'entrées d'ID de fiche d'informations. Chaque élément est une chaîne représentant un ID de fiche d'informations unique à traiter dans l'opération par lots.
Show child attributes
Show child attributes
Réponse
successful operation
La date et l'heure auxquelles l'opération de lot a été effectuée, au format ISO 8601.
Un tableau de résultats de l'opération par lot, chacun contenant les ID et leurs contrôles d'accès associés.
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 Un objet contenant des liens supplémentaires liés à 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.