Schemas, eindpunt
Een schema kan worden beschouwd als de blauwdruk voor de gegevens die u in Adobe Experience Platform wilt invoeren. Elk schema bestaat uit een klasse en nul of meer groepen schemavelden. Met het eindpunt /schemas in de Schema Registry API kunt u schema's programmatisch beheren binnen uw ervaringstoepassing.
Aan de slag
Het API eindpunt dat in deze gids wordt gebruikt maakt deel uit van Schema Registry API . Alvorens verder te gaan, te herzien gelieve begonnen gids voor verbindingen aan verwante documentatie, een gids aan het lezen van de steekproefAPI vraag in dit document, en belangrijke informatie betreffende vereiste kopballen die nodig zijn om vraag aan om het even welke Experience Platform API met succes te maken.
Een lijst met schema's ophalen list
U kunt alle schema's weergeven onder de container global of tenant door een GET-aanvraag in te dienen bij respectievelijk /global/schemas of /tenant/schemas .
API formaat
GET /{CONTAINER_ID}/schemas?{QUERY_PARAMS}
{CONTAINER_ID}global voor door Adobe gemaakte schema's of tenant voor schema's die eigendom zijn van uw organisatie.{QUERY_PARAMS}Verzoek
Met de volgende aanvraag wordt een lijst met schema's opgehaald uit de container tenant . Hierbij wordt een orderby query-parameter gebruikt om de resultaten op hun title -kenmerk te sorteren.
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}'
De antwoordindeling is afhankelijk van de header Accept die in de aanvraag wordt verzonden. De volgende Accept kopteksten zijn beschikbaar voor aanbiedingsschema's:
Accept headerapplication/vnd.adobe.xed-id+jsonapplication/vnd.adobe.xed+json$ref en allOf inbegrepen. (Limiet: 300)Reactie
In de bovenstaande aanvraag is de header application/vnd.adobe.xed-id+json Accept gebruikt en daarom bevat het antwoord alleen de kenmerken title , $id , meta:altId en version voor elk schema. Als u de andere Accept header (application/vnd.adobe.xed+json ) gebruikt, worden alle kenmerken van elk schema geretourneerd. Selecteer de juiste Accept header, afhankelijk van de informatie die u in uw reactie nodig hebt.
{
"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"
}
}
}
Een schema opzoeken lookup
U kunt een specifiek schema opzoeken door een GET-aanvraag in te dienen die de schema-id in het pad bevat.
API formaat
GET /{CONTAINER_ID}/schemas/{SCHEMA_ID}
{CONTAINER_ID}global voor een Adobe-schema of tenant voor een schema dat eigendom is van uw organisatie.{SCHEMA_ID}meta:altId of URL-gecodeerde $id van het schema dat u wilt opzoeken.Verzoek
Met de volgende aanvraag wordt een schema opgehaald dat door de meta:altId -waarde in het pad wordt opgegeven.
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}'
De antwoordindeling is afhankelijk van de header Accept die in de aanvraag wordt verzonden. Voor alle opzoekverzoeken moet een version worden opgenomen in de Accept -koptekst. De volgende Accept headers zijn beschikbaar:
Accept headerapplication/vnd.adobe.xed+json; version=1$ref en allOf heeft Raw titels en beschrijvingen.application/vnd.adobe.xed-full+json; version=1$ref en allOf resolve, heeft titels en beschrijvingen.application/vnd.adobe.xed-notext+json; version=1$ref en allOf , geen titels of beschrijvingen.application/vnd.adobe.xed-full-notext+json; version=1$ref en allOf opgelost, geen titels of beschrijvingen.application/vnd.adobe.xed-full-desc+json; version=1$ref en allOf opgelost, inclusief beschrijvingen.application/vnd.adobe.xed-deprecatefield+json; version=1$ref en allOf resolve, heeft titels en beschrijvingen. Vervangen velden worden aangegeven met een meta:status -kenmerk van deprecated .Reactie
Een succesvolle reactie keert de details van het schema terug. Welke velden worden geretourneerd, is afhankelijk van de header Accept die in de aanvraag wordt verzonden. Experimenteer met verschillende kopteksten van Accept om de reacties te vergelijken en te bepalen welke kopbal het beste voor uw gebruiksgeval is.
{
"$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}"
}
Een schema maken create
Het proces van de schemacompositie begint door een klasse toe te wijzen. De klasse definieert de belangrijkste gedragsaspecten van de gegevens (record- of tijdreeks) en de minimale velden die vereist zijn om de gegevens te beschrijven die worden ingevoerd.
Voor instructies bij het creëren van een schema zonder klassen of gebiedsgroepen, die als relationeel schema worden bekend, zie een relationele schema sectie creëren.
API formaat
POST /tenant/schemas
Verzoek
De aanvraag moet een allOf -kenmerk bevatten dat naar de $id van een klasse verwijst. Dit attribuut bepaalt de "basisklasse"die het schema zal uitvoeren. In dit voorbeeld is de basisklasse een klasse "Eigenschapinformatie" die eerder is gemaakt.
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) waarvan de waarde de $id vertegenwoordigt van de klasse of veldgroep die het nieuwe schema zal implementeren. Er moet één klasse worden opgegeven, met nul of meer extra veldgroepen. In het bovenstaande voorbeeld is het ene object in de array allOf de klasse van het schema.Reactie
Een succesvol antwoord retourneert HTTP-status 201 (Gemaakt) en een lading die de details bevat van het nieuwe schema, inclusief $id, meta:altId en version . Deze waarden zijn alleen-lezen en worden toegewezen door de 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}"
}
}
Het uitvoeren van een verzoek van GET aan lijst alle schema's in de huurderscontainer zou nu het nieuwe schema omvatten. U kunt a raadpleging (GET) verzoek uitvoeren gebruikend URL-Gecodeerde $id URI om het nieuwe schema direct te bekijken.
Om extra gebieden aan een schema toe te voegen, kunt u de verrichting van a PATCH uitvoeren om gebiedsgroepen aan de 2} en allOf series van het schema toe te voegen.meta:extends
Een relationeel schema maken create-relational-schema
Maak een relationeel schema door een POST-aanvraag in te dienen bij het eindpunt van /schemas . De relationele schema's slaan gestructureerde, relationele-stijlgegevens zonder klassen of gebiedsgroepen op. Definieer velden rechtstreeks in het schema en identificeer het schema als relationeel met behulp van een logische gedragstag.
meta:extends in op "https://ns.adobe.com/xdm/data/adhoc-v2" om een relationeel schema te maken. Dit is a logisch gedragsherkenningsteken (niet een fysiek gedrag of een klasse). niet verwijzingsklassen of gebiedsgroepen in allOf, en omvat geen klassen of gebiedsgroepen in meta:extends.Maak eerst het schema met POST /tenant/schemas . Dan voeg de vereiste beschrijvers met toe Beschrijvers API (POST /tenant/descriptors) :
- Primaire zeer belangrijke beschrijver : Een primair-zeer belangrijk gebied moet op wortel-niveau zijn en duidelijk zoals vereist.
- beschrijver van de Versie : Vereist wanneer een primaire sleutel bestaat.
- beschrijver van de Verhouding : Facultatief, bepaalt toetreedt; kardinaliteit niet afgedwongen bij opname.
- de beschrijver van de tijdstempel : Voor tijd-reeksen schema's, moet de primaire sleutel a samengestelde sleutel zijn die het timestamp gebied omvat.
union niet toe op meta:immutableTags wanneer u werkt met relationele schema's. Deze configuratie is geblokkeerd in de gebruikersinterface, maar wordt momenteel niet geblokkeerd door de API. Zie de gids van het vakbondseindpunt voor meer informatie over het gedrag van het unieschema.API formaat
POST /tenant/schemas
Verzoek
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"
}
'
Hoofdtekst aanvragen
titledescriptiontype"object" zijn voor relationele schema's.definitionsdefinitions.<name>.propertiesallOf#/definitions/marketing_customers ).meta:extends"https://ns.adobe.com/xdm/data/adhoc-v2" bevatten om het schema als relationeel te identificeren.meta:behaviorType"record" . Gebruik "time-series" alleen wanneer deze is ingeschakeld en van toepassing is.Reactie
Een succesvol verzoek keert HTTP 201 (Gemaakt) en het gecreeerde schema terug.
reactie van het Voorbeeld
{
"$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"
}
Eigenschappen van het responslichaam
$idmeta:altIdmeta:resourceType"schemas").versiontitledescriptiontypedefinitionsallOf vermeld om de hoofdmap van het schema te definiëren.allOf#/definitions/marketing_customers ).meta:extendsadhoc-v2).meta:behaviorTyperecord of time-series , indien ingeschakeld).meta:containerIdtenant).Om gebieden aan een relationeel schema toe te voegen nadat het is gecreeerd, doe het verzoek van a PATCH . Relationele schema's nemen of automatisch evolueren niet over. Structurele wijzigingen zoals het wijzigen van de naam of het verwijderen van velden zijn alleen toegestaan als er geen gegevens in de gegevensset zijn opgenomen. Zodra het gegeven bestaat, slechts additieve veranderingen (zoals het toevoegen van nieuwe gebieden) worden gesteund.
U kunt nieuwe velden op hoofdniveau toevoegen (binnen de basisdefinitie of basiscode properties ), maar u kunt het type van bestaande velden niet verwijderen, hernoemen of wijzigen.
Een schema bijwerken put
U kunt een volledig schema door een verrichting van PUT vervangen, hoofdzakelijk herschrijvend het middel. Wanneer het bijwerken van een schema door een verzoek van PUT, moet het lichaam alle gebieden omvatten die zouden worden vereist wanneer creërend een nieuw schema in een POST- verzoek.
API formaat
PUT /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}meta:altId of URL-gecodeerde $id van het schema dat u opnieuw wilt schrijven.Verzoek
De volgende aanvraag vervangt een bestaand schema door de kenmerken title , description en allOf ervan te wijzigen.
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"
}
]
}'
Reactie
Een succesvolle reactie keert de details van het bijgewerkte schema terug.
{
"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}"
}
}
Een gedeelte van een schema bijwerken patch
U kunt een gedeelte van een schema bijwerken door een PATCH-verzoek te gebruiken. Schema Registry ondersteunt alle standaard JSON-patchbewerkingen, inclusief add , remove en replace . Voor meer informatie over Reparatie JSON, zie de API fundamentals gids .
Een van de meest voorkomende PATCH-bewerkingen bestaat uit het toevoegen van eerder gedefinieerde veldgroepen aan een schema, zoals in het onderstaande voorbeeld wordt getoond.
API formaat
PATCH /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}$id URI of meta:altId van het schema dat u wilt bijwerken.Verzoek
In de onderstaande voorbeeldaanvraag wordt een nieuwe veldgroep toegevoegd aan een schema door de waarde $id van die veldgroep toe te voegen aan de arrays meta:extends en allOf .
De aanvraaginstantie heeft de vorm van een array, waarbij elk vermeld object een specifieke wijziging in een afzonderlijk veld vertegenwoordigt. Elk voorwerp omvat uit te voeren verrichting (op), welk gebied de verrichting zou moeten worden uitgevoerd (path), en welke informatie in die verrichting (value) zou moeten worden omvat.
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"
}
}
]'
Reactie
De reactie toont aan dat beide bewerkingen met succes zijn uitgevoerd. De veldgroep $id is toegevoegd aan de array meta:extends en een verwijzing ( $ref ) naar de veldgroep $id wordt nu weergegeven in de array 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}"
}
}
Een schema inschakelen voor gebruik in realtime-klantprofiel union
Opdat een schema om aan in real time Profiel van de Klant deel te nemen, moet u a union markering aan de 3} serie van het schema {toevoegen. meta:immutableTags U kunt dit bereiken door een PATCH-aanvraag voor het desbetreffende schema in te dienen.
API formaat
PATCH /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}$id URI of meta:altId van het schema dat u wilt inschakelen.Verzoek
In de onderstaande voorbeeldaanvraag wordt een array meta:immutableTags toegevoegd aan een bestaand schema, zodat de array een enkele tekenreekswaarde union krijgt om deze in te schakelen voor gebruik in Profiel.
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"]
}
]'
Reactie
Een succesvol antwoord retourneert de details van het bijgewerkte schema, waarbij wordt getoond dat de array meta:immutableTags is toegevoegd.
{
"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"
]
}
U kunt nu de samenvoeging voor de klasse van dit schema bekijken om te bevestigen dat de gebieden van het schema worden vertegenwoordigd. Zie de gids van het vakbondseindpunt voor meer informatie.
Schema verwijderen delete
Het kan soms noodzakelijk zijn om een schema uit de Registratie van het Schema te verwijderen. Dit wordt gedaan door een DELETE- verzoek met schema-identiteitskaart uit te voeren die in de weg wordt verstrekt.
API formaat
DELETE /tenant/schemas/{SCHEMA_ID}
{SCHEMA_ID}$id URI of meta:altId van het schema dat u wilt verwijderen.Verzoek
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}'
Reactie
Een geslaagde reactie retourneert HTTP-status 204 (Geen inhoud) en een lege hoofdtekst.
U kunt de verwijdering bevestigen door een opzoekverzoek (GET) in te dienen bij het schema. U moet een header Accept in de aanvraag opnemen, maar u moet de HTTP-status 404 (Niet gevonden) ontvangen omdat het schema uit de schemaregistratie is verwijderd.