エンドポイントの書き出し
Schema Library内のすべてのリソースは、Adobe Experience Platform内の特定のサンドボックスに含まれています。 場合によっては、サンドボックスと組織間でExperience Data Model (XDM)リソースを共有したい場合があります。 Schema Registry APIの/rpc/export エンドポイントを使用すると、Schema Library内の任意のスキーマ、スキーマフィールドグループ、またはデータタイプのエクスポートペイロードを生成し、そのペイロードを使用して、そのリソース(およびすべての依存リソース)を/rpc/import エンドポイント を介してターゲットサンドボックスおよび組織にインポートできます。
はじめに
/rpc/export エンドポイントはSchema Registry APIの一部です。 先に進む前に、はじめる前にを参照し、関連ドキュメントへのリンク、このドキュメントのサンプル API 呼び出しを読み取るためのガイドおよび任意の Experience Platform API を正常に呼び出すために必要なヘッダーに関する重要な情報を確認してください。
/rpc/export エンドポイントは、Schema Registryでサポートされているリモート プロシージャ コール (RPC)の一部です。 Schema Registry APIの他のエンドポイントとは異なり、RPC エンドポイントはAcceptやContent-Typeなどの追加ヘッダーを必要とせず、CONTAINER_IDを使用しません。 代わりに、以下のAPI呼び出しで示すように、/rpc名前空間を使用する必要があります。
リソースの書き出しペイロードの生成 export
Schema Libraryの既存のスキーマ、フィールドグループ、またはデータタイプの場合、パス内のリソースのIDを指定して/export エンドポイントにGET リクエストを行うことで、エクスポートペイロードを生成できます。
API 形式
GET /rpc/export/{RESOURCE_ID}
{RESOURCE_ID}meta:altIdまたはURL エンコードされた$id。リクエスト
次のリクエストは、Restaurant フィールドグループの書き出しペイロードを取得します。
curl -X GET \
https://platform.adobe.io/data/foundation/schemaregistry/rpc/export/_{TENANT_ID}.mixins.922a56b58c6b4e4aeb49e577ec82752106ffe8971b23b4d9 \
-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 'Accept: application/vnd.adobe.xdm-link+json'
応答
応答が成功すると、ターゲット XDM リソースとそのすべての依存リソースを表すオブジェクトの配列が返されます。 この例では、配列内の最初のオブジェクトは、Restaurant フィールドグループが採用するテナント作成のProperty データタイプですが、2番目のオブジェクトはRestaurant フィールドグループ自体です。 このペイロードを使用して、リソース 🔗を別のサンドボックスまたは組織に インポートできます。
リソースのテナント IDのすべてのインスタンスは<XDM_TENANTID_PLACEHOLDER>に置き換えられます。 これにより、Schema Registryは、後続のインポート呼び出しで送信される場所に応じて、リソースに正しいテナント IDを自動的に適用できます。
[
{
"$id": "https://ns.adobe.com/<XDM_TENANTID_PLACEHOLDER>/datatypes/fc07162ee7ca8d18e074a3bb50c3938c76160bf6040e8495",
"meta:altId": "_<XDM_TENANTID_PLACEHOLDER>.datatypes.fc07162ee7ca8d18e074a3bb50c3938c76160bf6040e8495",
"meta:resourceType": "datatypes",
"version": "1.0",
"title": "Property",
"type": "object",
"description": "",
"definitions": {
"customFields": {
"properties": {
"propertyId": {
"title": "Property ID",
"description": "ID for a company-owned property.",
"type": "string",
"isRequired": false,
"meta:ui": {
"ref": [
"schema://5fbc29ec292534000055dd55",
"#/definitions/customFields"
],
"path": "{}._<XDM_TENANTID_PLACEHOLDER>{}.property{}.propertyId",
"editable": true,
"generateDate": 1606168175975
},
"meta:xdmType": "string"
},
"jurisdiction": {
"title": "Jurisdiction",
"description": "",
"type": "string",
"isRequired": false,
"enum": [
"NA",
"UK",
"EU"
],
"meta:enum": {
"NA": "North America",
"UK": "United Kingdom",
"EU": "European Union"
},
"meta:ui": {
"ref": [
"schema://5fbc29ec292534000055dd55",
"#/definitions/customFields"
],
"path": "{}._<XDM_TENANTID_PLACEHOLDER>{}.property{}.jurisdiction",
"editable": true,
"generateDate": 1606168175975
},
"meta:xdmType": "string"
}
}
}
},
"allOf": [
{
"$ref": "#/definitions/customFields",
"type": "object",
"meta:xdmType": "object"
}
],
"meta:extensible": true,
"meta:abstract": true,
"meta:xdmType": "object",
"meta:sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"meta:sandboxType": "production"
},
{
"$id": "https://ns.adobe.com/<XDM_TENANTID_PLACEHOLDER>/mixins/922a56b58c6b4e4aeb49e577ec82752106ffe8971b23b4d9",
"meta:altId": "_<XDM_TENANTID_PLACEHOLDER>.mixins.922a56b58c6b4e4aeb49e577ec82752106ffe8971b23b4d9",
"meta:resourceType": "mixins",
"version": "1.0",
"title": "Restaurant",
"type": "object",
"description": "",
"definitions": {
"customFields": {
"type": "object",
"properties": {
"_<XDM_TENANTID_PLACEHOLDER>": {
"type": "object",
"properties": {
"capacity": {
"title": "Capacity",
"description": "Restaurant capacity",
"type": "string",
"isRequired": false,
"meta:xdmType": "string"
},
"kitchen": {
"title": "Kitchen Style",
"description": "Style of kitchen",
"type": "string",
"isRequired": false,
"meta:xdmType": "string"
},
"rating": {
"title": "Rating",
"description": "",
"type": "integer",
"isRequired": false,
"meta:xdmType": "int"
},
"property": {
"title": "Property",
"description": "",
"$ref": "https://ns.adobe.com/<XDM_TENANTID_PLACEHOLDER>/datatypes/fc07162ee7ca8d18e074a3bb50c3938c76160bf6040e8495",
"type": "object",
"meta:xdmType": "object"
}
},
"meta:xdmType": "object"
}
},
"meta:xdmType": "object"
}
},
"allOf": [
{
"$ref": "#/definitions/customFields",
"type": "object",
"meta:xdmType": "object"
}
],
"meta:extensible": true,
"meta:abstract": true,
"meta:intendedToExtend": [],
"meta:xdmType": "object",
"meta:sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
"meta:sandboxType": "production"
}
]
リソースの読み込み import
CSV ファイルから書き出しペイロードを生成した後、そのペイロードを/rpc/import エンドポイントに送信してスキーマを生成できます。
エクスポートペイロードからスキーマを生成する方法について詳しくは、 インポートエンドポイントガイド を参照してください。