Skip to main content
POST
/
api
/
v1
/
cdp
/
relationships
Link a person to a custom object
curl --request POST \
  --url https://app.useboom.ai/api/v1/cdp/relationships \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "personExternalId": "user_123",
  "customObjectExternalId": "ord_998",
  "relationshipTypeId": "rt_2hk9"
}
'
{
  "created": true,
  "relationshipTypeId": "rt_2hk9"
}

Authorizations

Authorization
string
header
required

Organization API key, sent as Authorization: Bearer boom_org_....

Body

application/json
personExternalId
string
required
Required string length: 1 - 255
customObjectExternalId
string
required

External id of the custom object. It must be of the type the relationship type targets.

Required string length: 1 - 255
relationshipTypeId
string
required

Id of a registered person↔custom object relationship type (from POST or GET /relationship-types). Required — it fixes the link's role and which custom object type it targets.

Required string length: 1 - 255

Response

Relationship created or reactivated

created
boolean
required

true if a new edge was created, false if an existing one was reactivated.

relationshipTypeId
string | null
required

The id of the relationship type this edge was bucketed into (resolved or auto-registered from the role + customObjectType). null only on an unexpected resolution miss. This is returned for reference — you never send it in the request.