Point d’entrée des schémas
Un schéma peut être considéré comme le plan directeur des données que vous souhaitez ingérer dans Adobe Experience Platform. Chaque schéma est composé d’une classe et de zéro ou plusieurs groupes de champs. Le point d’entrée /schemas
de l’API Schema Registry vous permet de gérer par programmation les schémas dans votre application d’expérience.
Prise en main
Le point d’entrée dʼAPI utilisé dans ce guide fait partie de lʼ Schema Registry API. Avant de continuer, consultez le guide de prise en main pour obtenir des liens vers la documentation associée, un guide de lecture des exemples d’appels API dans ce document et des informations importantes sur les en-têtes requis pour réussir des appels vers n’importe quelle API d’Experience Platform.
Récupération d’une liste de schémas list
Vous pouvez répertorier tous les schémas sous le conteneur global
ou tenant
en effectuant une requête GET à /global/schemas
ou /tenant/schemas
, respectivement.
Format d’API
GET /{CONTAINER_ID}/schemas?{QUERY_PARAMS}
{CONTAINER_ID}
global
pour les schémas créés par Adobe ou tenant
pour les schémas appartenant à votre organisation.{QUERY_PARAMS}
Requête
La requête suivante récupère une liste de schémas du conteneur de tenant
à l’aide d’un paramètre de requête orderby
pour trier les résultats en fonction de leur attribut title
.
curl -X GET \
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas?orderby=title \
-H 'Accept: application/vnd.adobe.xed-id+json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Le format de la réponse dépend de l’en-tête Accept
envoyé dans la requête. Les en-têtes Accept
suivants sont disponibles pour répertorier les schémas :
Accept
application/vnd.adobe.xed-id+json
application/vnd.adobe.xed+json
$ref
et allOf
d’origine inclus. (Limite : 300)Réponse
La requête ci-dessus a utilisé l’en-tête application/vnd.adobe.xed-id+json
Accept
. Par conséquent, la réponse inclut uniquement les attributs title
, $id
, meta:altId
et version
pour chaque schéma. L’utilisation de l’autre en-tête de Accept
(application/vnd.adobe.xed+json
) renvoie tous les attributs de chaque schéma. Sélectionnez l’en-tête de Accept
approprié en fonction des informations dont vous avez besoin dans votre réponse.
{
"results": [
{
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/0238be93d3e7a06aec5e0655955901ec",
"meta:altId": "_{TENANT_ID}.schemas.0238be93d3e7a06aec5e0655955901ec",
"version": "1.4",
"title": "Hotels"
},
{
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/0ef4ce0d390f0809fad490802f53d30b",
"meta:altId": "_{TENANT_ID}.schemas.0ef4ce0d390f0809fad490802f53d30b",
"version": "1.0",
"title": "Loyalty Members"
}
],
"_page": {
"orderby": "title",
"next": null,
"count": 2
},
"_links": {
"next": null,
"global_schemas": {
"href": "https://platform.adobe.io/data/foundation/schemaregistry/global/schemas"
}
}
}
Recherche d’un schéma lookup
Vous pouvez rechercher un schéma spécifique en effectuant une requête GET qui inclut l’identifiant du schéma dans le chemin d’accès.
Format d’API
GET /{CONTAINER_ID}/schemas/{SCHEMA_ID}
{CONTAINER_ID}
global
pour un schéma créé par Adobe ou tenant
pour un schéma détenu par votre organisation.{SCHEMA_ID}
meta:altId
$id
ou encodé URL du schéma que vous souhaitez rechercher.Requête
La requête suivante récupère un schéma spécifié par sa valeur meta:altId
dans le chemin d’accès .
curl -X GET \
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas/_{TENANT_ID}.schemas.f579a0b5f992c69458ea408ec36571f7da9de15901bab116 \
-H 'Accept: application/vnd.adobe.xed+json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Le format de la réponse dépend de l’en-tête Accept
envoyé dans la requête. Toutes les requêtes de recherche nécessitent qu’un version
soit inclus dans l’en-tête Accept
. Les en-têtes Accept
suivants sont disponibles :
Accept
application/vnd.adobe.xed+json; version=1
$ref
et allOf
, contient des titres et des descriptions.application/vnd.adobe.xed-full+json; version=1
$ref
et allOf
résolus, contient des titres et des descriptions.application/vnd.adobe.xed-notext+json; version=1
$ref
et allOf
, ne contient aucun titre ni aucune description.application/vnd.adobe.xed-full-notext+json; version=1
$ref
et allOf
résolus, ne contient aucun titre ni aucune description.application/vnd.adobe.xed-full-desc+json; version=1
$ref
et allOf
résolus, contient des descripteurs.application/vnd.adobe.xed-deprecatefield+json; version=1
$ref
et allOf
résolus, comporte des titres et des descriptions. Les champs obsolètes sont indiqués par un attribut meta:status
de deprecated
.Réponse
Une réponse réussie renvoie les détails du schéma. Les champs renvoyés dépendent de l’en-tête Accept
envoyé dans la requête. Testez différents en-têtes Accept
pour comparer les réponses et déterminer l’en-tête le mieux adapté à votre cas d’utilisation.
{
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/20af3f1d4b175f27ba59529d1b51a0c79fc25df454117c80",
"meta:altId": "_{TENANT_ID}.schemas.20af3f1d4b175f27ba59529d1b51a0c79fc25df454117c80",
"meta:resourceType": "schemas",
"version": "1.1",
"title": "Example schema",
"type": "object",
"description": "An example schema created within the tenant container.",
"allOf": [
{
"$ref": "https://ns.adobe.com/xdm/context/profile",
"type": "object",
"meta:xdmType": "object"
},
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/mixins/443fe51457047d958f4a97853e64e0eca93ef34d7990583b",
"type": "object",
"meta:xdmType": "object"
}
],
"imsOrg": "{ORG_ID}",
"meta:extensible": false,
"meta:abstract": false,
"meta:extends": [
"https://ns.adobe.com/{TENANT_ID}/mixins/443fe51457047d958f4a97853e64e0eca93ef34d7990583b",
"https://ns.adobe.com/xdm/common/auditable",
"https://ns.adobe.com/xdm/data/record",
"https://ns.adobe.com/xdm/context/profile"
],
"meta:xdmType": "object",
"meta:registryMetadata": {
"repo:createdDate": 1602872911226,
"repo:lastModifiedDate": 1603381419889,
"xdm:createdClientId": "{CLIENT_ID}",
"xdm:lastModifiedClientId": "{CLIENT_ID}",
"xdm:createdUserId": "{USER_ID}",
"xdm:lastModifiedUserId": "{USER_ID}",
"eTag": "84b4da79b7445a4bf1c59269e718065effddb983c492f48e223d49c049c6d589",
"meta:globalLibVersion": "1.15.4"
},
"meta:class": "https://ns.adobe.com/xdm/context/profile",
"meta:containerId": "tenant",
"meta:sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"meta:sandboxType": "production",
"meta:tenantNamespace": "_{TENANT_ID}"
}
Créer un schéma create
Le processus de composition d’un schéma commence par l’affectation d’une classe. La classe définit les principaux aspects comportementaux des données (enregistrement ou série temporelle), ainsi que les champs minimaux requis pour décrire les données qui seront assimilées.
Pour plus d’informations sur la création d’un schéma sans classes ni groupes de champs, connu sous le nom de schéma basé sur un modèle, consultez la section Créer un schéma basé sur un modèle.
Format d’API
POST /tenant/schemas
Requête
La requête doit inclure un attribut allOf
qui fait référence à la clé $id
d’une classe. Cet attribut définit la « classe de base » que le schéma va mettre en œuvre. Dans cet exemple, la classe de base est une classe « Informations sur les propriétés », qui a été créée précédemment.
curl -X POST \
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas \
-H 'Authorization: Bearer {ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"title":"Property Information",
"description": "Property-related information.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590"
}
]
}'
allOf
$ref
) dont la valeur représente le $id
de la classe ou du groupe de champs que le nouveau schéma implémentera. Une classe doit être fournie, avec zéro ou plusieurs groupes de champs supplémentaires. Dans l’exemple ci-dessus, l’objet unique dans le tableau allOf
est la classe du schéma.Réponse
Une réponse réussie renvoie un état HTTP 201 (Créé) et un payload qui contient les détails du schéma créé, y compris le $id
, l’meta:altId
et la version
. Ces valeurs sont en lecture seule et sont attribuées par le Schema Registry.
{
"title": "Property Information",
"description": "Property-related information.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590"
}
],
"meta:class": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"meta:abstract": false,
"meta:extensible": false,
"meta:extends": [
"https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"https://ns.adobe.com/xdm/data/record"
],
"meta:containerId": "tenant",
"imsOrg": "{ORG_ID}",
"meta:altId": "_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67",
"meta:xdmType": "object",
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/d5cc04eb8d50190001287e4c869ebe67",
"version": "1.0",
"meta:resourceType": "schemas",
"meta:registryMetadata": {
"repo:createDate": 1552088461236,
"repo:lastModifiedDate": 1552088461236,
"xdm:createdClientId": "{CREATED_CLIENT}",
"xdm:repositoryCreatedBy": "{CREATED_BY}"
}
}
L’exécution d’une requête GET pour répertorier tous les schémas dans le conteneur du tenant inclut désormais le nouveau schéma. Vous pouvez effectuer une requête de recherche (GET) à l’aide de l’URI de $id
codée en URL pour afficher directement le nouveau schéma.
Pour ajouter des champs supplémentaires à un schéma, vous pouvez effectuer une opération PATCH afin d’ajouter des groupes de champs aux tableaux allOf
et meta:extends
du schéma.
Créer un schéma basé sur un modèle create-model-based-schema
Créez un schéma basé sur un modèle en adressant une requête POST au point d’entrée /schemas
. Les schémas basés sur des modèles stockent des données structurées de style relationnel sans classes ni groupes de champs. Définissez les champs directement sur le schéma et identifiez le schéma comme basé sur un modèle à l’aide d’une balise de comportement logique.
meta:extends
sur "https://ns.adobe.com/xdm/data/adhoc-v2"
. Il s’agit d’un identifiant de comportement logique (et non d’un comportement ou d’une classe physique). N’incluez pas les classes de référence ou les groupes de champs dans les allOf
et n’incluez pas les classes ou les groupes de champs dans les meta:extends
.Créez d’abord le schéma avec POST /tenant/schemas
. Ajoutez ensuite les descripteurs requis avec l’API Descriptors (POST /tenant/descriptors
) :
- descripteur de clé de Principal: un champ de clé primaire doit être au niveau racine et marqué comme requis.
- Descripteur de version : obligatoire lorsqu’il existe une clé primaire.
- Descripteur de relation : facultatif, définit les jointures ; la cardinalité n’est pas appliquée lors de l’ingestion.
- Descripteur d’horodatage : pour les schémas de série temporelle, la clé primaire doit être une clé composite qui inclut le champ d’horodatage.
union
à meta:immutableTags
lorsque vous utilisez des schémas basés sur des modèles. Cette configuration est bloquée dans l’interface utilisateur, mais n’est pas actuellement bloquée par l’API. Pour plus d’informations sur le comportement du schéma d’union consultez leguide des points d’entrée des unions .Format d’API
POST /tenant/schemas
Requête
curl --request POST \
--url https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas \
-H 'Accept: application/vnd.adobe.xed+json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"title": "marketing.customers",
"type": "object",
"description": "Schema of the Marketing Customers table.",
"definitions": {
"customFields": {
"type": "object",
"properties": {
"customer_id": {
"title": "Customer ID",
"description": "Primary key of the customer table.",
"type": "string",
"minLength": 1
},
"name": {
"title": "Name",
"description": "Name of the customer.",
"type": "string"
},
"email": {
"title": "Email",
"description": "Email of the customer.",
"type": "string",
"format": "email",
"minLength": 1
}
},
"required": ["customer_id"]
}
},
"allOf": [
{
"$ref": "#/definitions/customFields",
"meta:xdmType": "object"
}
],
"meta:extends": ["https://ns.adobe.com/xdm/data/adhoc-v2"],
"meta:behaviorType": "record"
}
'
Propriétés du corps de la requête
title
description
type
"object"
pour les schémas basés sur des modèles.definitions
definitions.<name>.properties
allOf
#/definitions/marketing_customers
).meta:extends
"https://ns.adobe.com/xdm/data/adhoc-v2"
pour identifier le schéma comme basé sur un modèle.meta:behaviorType
"record"
. Utilisez "time-series"
uniquement lorsqu’elle est activée et appropriée.Réponse
Une requête réussie renvoie HTTP 201 (Created) et le schéma créé.
Exemple de réponse
{
"$id": "https://ns.adobe.com/<TENANT_ID>/schemas/<SCHEMA_UUID>",
"meta:altId": "_<SCHEMA_ALT_ID>",
"meta:resourceType": "schemas",
"version": "1.0",
"title": "marketing.customers",
"description": "Schema of the Marketing Customers table.",
"type": "object",
"definitions": {
"marketing_customers": {
"type": "object",
"properties": {
"customer_id": {
"title": "Customer ID",
"description": "Primary key of the customer table.",
"type": "string",
"minLength": 1
},
"name": {
"title": "Name",
"description": "Name of the customer.",
"type": "string"
},
"email": {
"title": "Email",
"description": "Email of the customer.",
"type": "string",
"format": "email",
"minLength": 1
}
},
"required": ["customer_id"]
}
},
"allOf": [
{ "$ref": "#/definitions/marketing_customers" }
],
"meta:extends": ["https://ns.adobe.com/xdm/data/adhoc-v2"],
"meta:behaviorType": "record",
"meta:containerId": "tenant"
}
Propriétés du corps de la réponse
$id
meta:altId
meta:resourceType
"schemas"
).version
title
description
type
definitions
allOf
pour définir la racine du schéma.allOf
#/definitions/marketing_customers
).meta:extends
adhoc-v2
).meta:behaviorType
record
ou time-series
, lorsqu’il est activé).meta:containerId
tenant
).Pour ajouter des champs à un schéma basé sur un modèle après sa création, envoyez une requête PATCH. Les schémas basés sur des modèles n’héritent pas et n’évoluent pas automatiquement. Les modifications structurelles telles que le changement de nom ou la suppression de champs ne sont autorisées que si aucune donnée n’a été ingérée dans le jeu de données. Une fois que les données existent, seules les modifications supplémentaires (telles que l’ajout de nouveaux champs) sont prises en charge.
Vous pouvez ajouter de nouveaux champs au niveau racine (dans la définition ou le properties
racine), mais vous ne pouvez pas supprimer, renommer ni modifier le type des champs existants.
Mise à jour d’un schéma put
Vous pouvez remplacer un schéma entier par une opération PUT, c’est-à-dire réécrire la ressource. Lors de la mise à jour d’un schéma par le biais d’une requête PUT, le corps doit inclure tous les champs requis lors de la création d’un nouveau schéma dans une requête POST.
Format d’API
PUT /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}
meta:altId
$id
ou encodé URL du schéma que vous souhaitez réécrire.Requête
La requête suivante remplace un schéma existant, en modifiant ses attributs title
, description
et allOf
.
curl -X PUT \
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas/_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67 \
-H 'Authorization: Bearer {ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"title":"Commercial Property Information",
"description": "Information related to commercial properties.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/01b7b1745e8ac4ed1e8784ec91b6afa7"
}
]
}'
Réponse
Une réponse réussie renvoie les détails du schéma mis à jour.
{
"title":"Commercial Property Information",
"description": "Information related to commercial properties.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/01b7b1745e8ac4ed1e8784ec91b6afa7"
}
],
"meta:class": "https://ns.adobe.com/{TENANT_ID}/classes/01b7b1745e8ac4ed1e8784ec91b6afa7",
"meta:abstract": false,
"meta:extensible": false,
"meta:extends": [
"https://ns.adobe.com/{TENANT_ID}/classes/01b7b1745e8ac4ed1e8784ec91b6afa7",
"https://ns.adobe.com/xdm/data/record"
],
"meta:containerId": "tenant",
"imsOrg": "{ORG_ID}",
"meta:altId": "_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67",
"meta:xdmType": "object",
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/d5cc04eb8d50190001287e4c869ebe67",
"version": "1.0",
"meta:resourceType": "schemas",
"meta:registryMetadata": {
"repo:createDate": 1552088461236,
"repo:lastModifiedDate": 1552088470592,
"xdm:createdClientId": "{CREATED_CLIENT}",
"xdm:repositoryCreatedBy": "{CREATED_BY}"
}
}
Mise à jour d’une partie d’un schéma patch
Vous pouvez mettre à jour une partie d’un schéma à l’aide d’une requête PATCH. Le Schema Registry prend en charge toutes les opérations standard JSON Patch, notamment add
, remove
et replace
. Pour plus d’informations sur le correctif JSON, voir Guide de base des API.
L’une des opérations PATCH les plus courantes consiste à ajouter des groupes de champs précédemment définis à un schéma, comme le montre l’exemple ci-dessous.
Format d’API
PATCH /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}
$id
ou le meta:altId
du schéma que vous souhaitez mettre à jour encodé URL.Requête
L’exemple de requête ci-dessous ajoute un nouveau groupe de champs à un schéma en ajoutant la valeur de $id
de ce groupe de champs aux tableaux meta:extends
et allOf
.
Le corps de la requête se présente sous la forme d’un tableau, où chaque objet répertorié représente une modification spécifique apportée à un champ individuel. Chaque objet inclut l’opération à effectuer (op
), le champ sur lequel l’opération doit être effectuée (path
) et les informations à inclure dans cette opération (value
).
curl -X PATCH\
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas/_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/json' \
-d '[
{
"op": "add",
"path": "/meta:extends/-",
"value": "https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
},
{
"op": "add",
"path": "/allOf/-",
"value": {
"$ref": "https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
}
}
]'
Réponse
La réponse montre que les deux opérations ont été réalisées avec succès. Le groupe de champs $id
a été ajouté au tableau de meta:extends
et une référence ($ref
) au groupe de champs $id
apparaît désormais dans le tableau de allOf
.
{
"title": "Property Information",
"description": "Property-related information.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590"
},
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
}
],
"meta:class": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"meta:abstract": false,
"meta:extensible": false,
"meta:extends": [
"https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"https://ns.adobe.com/xdm/data/record",
"https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
],
"meta:containerId": "tenant",
"imsOrg": "{ORG_ID}",
"meta:altId": "_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67",
"meta:xdmType": "object",
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/d5cc04eb8d50190001287e4c869ebe67",
"version": "1.1",
"meta:resourceType": "schemas",
"meta:registryMetadata": {
"repo:createDate": 1552088461236,
"repo:lastModifiedDate": 1552088649634,
"xdm:createdClientId": "{CREATED_CLIENT}",
"xdm:repositoryCreatedBy": "{CREATED_BY}"
}
}
Activer un schéma à utiliser dans le profil client en temps réel union
Pour qu’un schéma puisse participer au profil client en temps réel, vous devez ajouter une balise union
au tableau de meta:immutableTags
du schéma. Pour ce faire, envoyez une requête PATCH au schéma en question.
Format d’API
PATCH /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}
$id
de meta:altId
codé URL du schéma que vous souhaitez activer.Requête
L’exemple de requête ci-dessous ajoute un tableau meta:immutableTags
à un schéma existant, en donnant au tableau une valeur de chaîne unique de union
pour l’utiliser dans Profile.
curl -X PATCH\
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas/_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'content-type: application/json' \
-d '[
{
"op": "add",
"path": "/meta:immutableTags",
"value": ["union"]
}
]'
Réponse
Une réponse réussie renvoie les détails du schéma mis à jour, indiquant que le tableau meta:immutableTags
a été ajouté.
{
"title": "Property Information",
"description": "Property-related information.",
"type": "object",
"allOf": [
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590"
},
{
"$ref": "https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
}
],
"meta:class": "https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"meta:abstract": false,
"meta:extensible": false,
"meta:extends": [
"https://ns.adobe.com/{TENANT_ID}/classes/19e1d8b5098a7a76e2c10a81cbc99590",
"https://ns.adobe.com/xdm/data/record",
"https://ns.adobe.com/{TENANT_ID}/mixins/e49cbb2eec33618f686b8344b4597ecf"
],
"meta:containerId": "tenant",
"imsOrg": "{ORG_ID}",
"meta:altId": "_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67",
"meta:xdmType": "object",
"$id": "https://ns.adobe.com/{TENANT_ID}/schemas/d5cc04eb8d50190001287e4c869ebe67",
"version": "1.1",
"meta:resourceType": "schemas",
"meta:registryMetadata": {
"repo:createDate": 1552088461236,
"repo:lastModifiedDate": 1552088649634,
"xdm:createdClientId": "{CREATED_CLIENT}",
"xdm:repositoryCreatedBy": "{CREATED_BY}"
},
"meta:immutableTags": [
"union"
]
}
Vous pouvez maintenant afficher l’union pour la classe de ce schéma afin de confirmer que les champs du schéma sont représentés. Pour plus d’informations, consultez le guide des points d’entrée des unions.
Supprimer un schéma delete
Il peut parfois être nécessaire de supprimer un schéma du registre des schémas. Pour ce faire, il suffit d’effectuer une requête DELETE avec l’identifiant de schéma fourni dans le chemin d’accès .
Format d’API
DELETE /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}
$id
ou le meta:altId
du schéma que vous souhaitez supprimer et dont l’URL est codée.Requête
curl -X DELETE \
https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas/_{TENANT_ID}.schemas.d5cc04eb8d50190001287e4c869ebe67 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
Une réponse réussie renvoie un état HTTP 204 (Pas de contenu) et un corps vide.
Vous pouvez confirmer la suppression en tentant d’adresser une requête de recherche (GET) au schéma . Vous devez inclure un en-tête Accept
dans la requête, mais vous devriez recevoir le statut HTTP 404 (Not Found), car le schéma a été supprimé du registre des schémas.