Skip to content

Remplacer une relation d’objet

put

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

Utilisez cet endpoint pour créer ou remplacer une relation d’objet.

Prérequis

Pour utiliser cet endpoint, vous aurez besoin d’une clé API avec la permission data_objects.object_relationships.update.

Limite de débit

Cet endpoint fait partie du compartiment d’écriture des objets de données avec une limite par défaut de 50 requêtes par minute.

Paramètres de chemin

Le tableau suivant répertorie et décrit les paramètres de chemin pour l’endpoint /data_objects/objects/{type_name}/{external_id}/object_relationships.

Paramètre Obligatoire Type de données Description
type_name Obligatoire String Type d’objet de l’URL
external_id Obligatoire String Identifiant d’objet de l’URL

Paramètres de requête

Le tableau suivant répertorie et décrit les paramètres du corps de la requête JSON pour l’endpoint /data_objects/objects/{type_name}/{external_id}/object_relationships.

Paramètre Obligatoire Type de données Description
rel_kind Obligatoire String Type de relation
related_type_name Obligatoire String Type d’objet lié
related_external_id Obligatoire String Identifiant d’objet lié
anchor Facultatif String source (par défaut) ou target
attributes Facultatif Object Attributs de la relation

Exemple de requête

Cette section inclut un exemple de payload JSON et un exemple de requête cURL.

Exemple de payload de requête

1
2
3
4
5
6
7
{
  "rel_kind": "subaccount",
  "related_type_name": "account",
  "related_external_id": "acct-456",
  "anchor": "source",
  "attributes": {}
}

Exemple de requête cURL

Cet exemple remplace la relation subaccount entre acct-123 et acct-456, en écrasant tous les attributs précédemment stockés sur celle-ci.

1
2
3
4
5
6
7
8
9
10
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": {}
}'

Réponse

Cette section inclut un exemple de réponse réussie et les champs de la réponse.

Exemple de réponse réussie

Le code de statut 200 pourrait renvoyer le corps de réponse suivant.

1
2
3
4
5
6
7
8
9
10
11
{
  "object_relationship": {
    "rel_kind": "subaccount",
    "to_data_object": {
      "type_name": "account",
      "external_id": "acct-456",
      "attributes": { "name": "Child Account" }
    },
    "attributes": {}
  }
}

Paramètres de réponse

Le tableau suivant répertorie et décrit les champs d’une réponse réussie.

Paramètre Obligatoire Type de données Description
object_relationship Obligatoire Object Enregistrement de la relation créée ou remplacée
object_relationship.rel_kind Obligatoire String Valeur du type de relation
object_relationship.to_data_object Conditionnel Object Objet lié lorsque anchor=source
object_relationship.from_data_object Conditionnel Object Objet lié lorsque anchor=target
object_relationship.attributes Obligatoire Object Attributs de la relation

Erreurs

Le tableau suivant répertorie les erreurs courantes pour cet endpoint et comment les résoudre.

Statut Cause Recommandation
400 Erreur de validation Vérifiez que rel_kind, anchor et attributes sont valides pour le type de relation.
404 Relation ou objets de l’endpoint introuvables (data-object-relationship-not-found) Vérifiez que les deux objets et les noms de types liés existent dans l’espace de travail.
422 Limite de relations par objet atteinte (data-object-relationship-limit-exceeded) Réduisez le nombre de relations pour l’objet, ou contactez le support Braze concernant les limites de l’espace de travail.
401 Clé REST API manquante ou invalide Vérifiez que l’en-tête Authorization utilise Bearer YOUR_REST_API_KEY et que la clé est active.
403 La clé API n’a pas la permission ou la requête est bloquée par la liste d’autorisation Vérifiez que la clé dispose de la permission data_objects.object_relationships.update et que votre adresse IP source figure sur la liste d’autorisation de la clé, si elle est configurée.
429 Limite de débit dépassée Réessayez après X-RateLimit-Reset et réduisez la fréquence des requêtes.
New Stuff!