Skip to content

List object relationships

get

/custom_objects/objects/{type_name}/{external_id}/object_relationships

Use this endpoint to list related custom objects from one object anchor.

Prerequisites

To use this endpoint, you need an API key with custom_objects.read.

Rate limit

This endpoint is in the Custom Objects read bucket with a default limit of 50 requests per minute.

Path parameters

The following table lists and describes the path parameters for the /custom_objects/objects/{type_name}/{external_id}/object_relationships endpoint.

Parameter Required Data Type Description
type_name Required String Source object type
external_id Required String Source object identifier

Query parameters

The following table lists and describes the query parameters for the /custom_objects/objects/{type_name}/{external_id}/object_relationships endpoint.

Parameter Required Data Type Description
anchor Optional String source (default) or target
rel_kind Optional String Filter by one relationship kind
limit Optional Integer Page size. Default 100. Clamped to 1 through 250
offset Optional Integer Offset. Default 0. Negative values are floored to 0

Example request

This section includes a sample parameter payload and a sample cURL request.

Sample request payload

Use this JSON object as a reference for request parameters.

1
2
3
4
5
6
7
8
{
  "type_name": "account",
  "external_id": "acct-123",
  "anchor": "source",
  "rel_kind": "subaccount",
  "limit": 100,
  "offset": 0
}

Sample cURL request

This example lists the subaccount records that acct-123 links out to, returning the first page of results.

1
2
curl --location --request GET 'https://rest.iad-01.braze.com/custom_objects/objects/account/acct-123/object_relationships?anchor=source&rel_kind=subaccount&limit=100&offset=0' \
--header 'Authorization: Bearer YOUR_REST_API_KEY'

Response

This section includes a sample successful response and the response fields.

Example success response

The status code 200 could return the following response body.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
  "items": [
    {
      "rel_kind": "subaccount",
      "to_custom_object": {
        "type_name": "account",
        "external_id": "acct-456",
        "attributes": { "name": "Child Account" }
      },
      "attributes": {}
    }
  ],
  "total_count": 1,
  "has_more": false,
  "next_offset": null,
  "offset": 0,
  "limit": 100
}

With anchor=target, related objects are returned as from_custom_object.

Response parameters

The following table lists and describes the fields in a successful response.

Parameter Required Data Type Description
items Required Array List of object relationship records
items[].rel_kind Required String Relationship kind value
items[].to_custom_object Conditional Object Related object when anchor=source
items[].from_custom_object Conditional Object Related object when anchor=target
items[].to_custom_object.type_name Conditional String Related object type name
items[].to_custom_object.external_id Conditional String Related object external ID
items[].to_custom_object.attributes Conditional Object Related object attributes
items[].from_custom_object.type_name Conditional String Related object type name
items[].from_custom_object.external_id Conditional String Related object external ID
items[].from_custom_object.attributes Conditional Object Related object attributes
items[].attributes Required Object Relationship attributes
total_count Required Integer Total number of matching records
has_more Required Boolean Whether another page of results is available
next_offset Optional Integer Offset for the next page when has_more is true
offset Required Integer Current page offset
limit Required Integer Page size used by the request

Errors

The following table lists common errors for this endpoint and how to resolve them.

Status Cause Guidance
400 Invalid anchor Use source or target for anchor.
404 Type or object not found Confirm type_name and external_id both exist in the workspace.
401 Missing or invalid REST API key Verify the Authorization header uses Bearer YOUR_REST_API_KEY and that the key is active.
403 API key lacks permission or request is blocked by allowlist Confirm the key has custom_objects.read and that your source IP is on the key allowlist, if configured.
429 Rate limit exceeded Retry after X-RateLimit-Reset and reduce request frequency.
New Stuff!