Ir al contenido

Reemplazar relación de objeto

put

/data_objects/objects/{type_name}/{external_id}/object_relationships

Usa este endpoint para crear o reemplazar una relación de objeto.

Requisitos previos

Para usar este endpoint, necesitas una clave de API con el permiso data_objects.object_relationships.update.

Límite de velocidad

Este endpoint se encuentra en el contenedor de escritura de Data Objects con un límite predeterminado de 50 solicitudes por minuto.

Parámetros de ruta

La siguiente tabla enumera y describe los parámetros de ruta del endpoint /data_objects/objects/{type_name}/{external_id}/object_relationships.

Parámetro Obligatorio Tipo de datos Descripción
type_name Obligatorio Cadena Tipo de objeto en la URL
external_id Obligatorio Cadena Identificador de objeto en la URL

Parámetros de la solicitud

La siguiente tabla enumera y describe los parámetros del cuerpo de la solicitud JSON para el endpoint /data_objects/objects/{type_name}/{external_id}/object_relationships.

Parámetro Obligatorio Tipo de datos Descripción
rel_kind Obligatorio Cadena Tipo de relación
related_type_name Obligatorio Cadena Tipo de objeto relacionado
related_external_id Obligatorio Cadena Identificador del objeto relacionado
anchor Opcional Cadena source (predeterminado) o target
attributes Opcional Objeto Atributos de la relación

Ejemplo de solicitud

Esta sección incluye una carga útil JSON de ejemplo y una solicitud cURL de ejemplo.

Carga útil de solicitud de ejemplo

{
  "rel_kind": "subaccount",
  "related_type_name": "account",
  "related_external_id": "acct-456",
  "anchor": "source",
  "attributes": {}
}

Solicitud cURL de ejemplo

Este ejemplo reemplaza la relación subaccount entre acct-123 y acct-456, sobrescribiendo cualquier atributo almacenado previamente en ella.

curl --location --request PUT 'https://rest.iad-01.braze.com/data_objects/objects/account/acct-123/object_relationships' \
--header 'Authorization: Bearer YOUR_REST_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
  "rel_kind": "subaccount",
  "related_type_name": "account",
  "related_external_id": "acct-456",
  "anchor": "source",
  "attributes": {}
}'

Respuesta

Esta sección incluye un ejemplo de respuesta exitosa y los campos de la respuesta.

Ejemplo de respuesta exitosa

El código de estado 200 podría devolver el siguiente cuerpo de respuesta.

{
  "object_relationship": {
    "rel_kind": "subaccount",
    "to_data_object": {
      "type_name": "account",
      "external_id": "acct-456",
      "attributes": { "name": "Child Account" }
    },
    "attributes": {}
  }
}

Parámetros de respuesta

La siguiente tabla enumera y describe los campos en una respuesta exitosa.

Parámetro Obligatorio Tipo de datos Descripción
object_relationship Obligatorio Objeto Registro de relación creado o reemplazado
object_relationship.rel_kind Obligatorio Cadena Valor del tipo de relación
object_relationship.to_data_object Condicional Objeto Objeto relacionado cuando anchor=source
object_relationship.from_data_object Condicional Objeto Objeto relacionado cuando anchor=target
object_relationship.attributes Obligatorio Objeto Atributos de la relación

Errores

La siguiente tabla enumera los errores comunes de este endpoint y cómo resolverlos.

Estado Causa Orientación
400 Error de validación Confirma que rel_kind, anchor y attributes son válidos para el tipo de relación.
404 Relación u objetos del endpoint no encontrados (data-object-relationship-not-found) Confirma que ambos objetos y los nombres de tipo relacionado existen en el espacio de trabajo.
422 Límite de relaciones por objeto alcanzado (data-object-relationship-limit-exceeded) Reduce el número de relaciones del objeto o ponte en contacto con soporte de Braze acerca de los límites del espacio de trabajo.
401 Clave de API REST faltante o no válida Verifica que el encabezado Authorization utilice Bearer YOUR_REST_API_KEY y que la clave esté activa.
403 La clave de API carece de permiso o la solicitud está bloqueada por la lista de permitidos Confirma que la clave tiene el permiso data_objects.object_relationships.update y que tu IP de origen está en la lista de permitidos de la clave, si está configurada.
429 Límite de velocidad excedido Reintenta después de X-RateLimit-Reset y reduce la frecuencia de las solicitudes.
New Stuff!