Create association definition
curl --request POST \
--url https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"fromObjectTypeId": "<string>",
"toObjectTypeId": "<string>",
"name": "<string>"
}
'import requests
url = "https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations"
payload = {
"fromObjectTypeId": "<string>",
"toObjectTypeId": "<string>",
"name": "<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({fromObjectTypeId: '<string>', toObjectTypeId: '<string>', name: '<string>'})
};
fetch('https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations', 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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations",
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([
'fromObjectTypeId' => '<string>',
'toObjectTypeId' => '<string>',
'name' => '<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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations"
payload := strings.NewReader("{\n \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations")
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 \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"fromObjectTypeId": "<string>",
"id": "<string>",
"toObjectTypeId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"updatedAt": "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"
}
}Schemas
Create association definition
Create a new association definition for the specified object type.
POST
/
media-bridge
/
2026-03
/
{appId}
/
schemas
/
{objectType}
/
associations
Create association definition
curl --request POST \
--url https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"fromObjectTypeId": "<string>",
"toObjectTypeId": "<string>",
"name": "<string>"
}
'import requests
url = "https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations"
payload = {
"fromObjectTypeId": "<string>",
"toObjectTypeId": "<string>",
"name": "<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({fromObjectTypeId: '<string>', toObjectTypeId: '<string>', name: '<string>'})
};
fetch('https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations', 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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations",
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([
'fromObjectTypeId' => '<string>',
'toObjectTypeId' => '<string>',
'name' => '<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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations"
payload := strings.NewReader("{\n \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\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/media-bridge/2026-03/{appId}/schemas/{objectType}/associations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/media-bridge/2026-03/{appId}/schemas/{objectType}/associations")
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 \"fromObjectTypeId\": \"<string>\",\n \"toObjectTypeId\": \"<string>\",\n \"name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"fromObjectTypeId": "<string>",
"id": "<string>",
"toObjectTypeId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"name": "<string>",
"updatedAt": "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
Autorisierungen
The access token received from the authorization server in the OAuth 2.0 flow.
Antwort
successful operation
The definition of an association
The ID of the source object type (e.g., 0-1 for contacts).
The unique ID of the associated object (e.g., a contact ID).
The ID of the destination object type (e.g., 0-3 for deals).
The timestamp when the association was created, in ISO 8601 format.
For labeled association types, the internal name of the association.
The timestamp when the last update was made to an association, in ISO 8601 format.
Zuletzt geändert am 1. April 2026
⌘I