在API中建立資料治理原則
原則服務API可讓您建立和管理資料治理原則,以決定可以對包含特定資料使用標籤的資料採取哪些行銷動作。
本檔案逐步說明如何使用Policy Service API建立治理原則。
快速入門
本教學課程需要您實際瞭解下列與建立和評估原則有關的主要概念:
- Adobe Experience Platform資料控管: Platform用來強制資料使用方式法規遵循的架構。
- 資料使用標籤:資料使用標籤套用至XDM資料欄位,指定存取該資料方式的限制。
- Experience Data Model (XDM): Platform用來組織客戶體驗資料的標準化架構。
- 沙箱: Experience Platform提供可將單一Platform執行個體分割成個別虛擬環境的虛擬沙箱,以利開發及改進數位體驗應用程式。
開始進行此教學課程之前,請檢閱開發人員指南以取得重要資訊,您必須瞭解這些資訊才能成功呼叫Policy Service API,包括必要的標頭以及如何讀取範例API呼叫。
定義行銷動作 define-action
在資料控管架構中,行銷動作是Experience Platform資料消費者採取的動作,需要檢查其是否違反資料使用原則。
建立資料使用原則的第一步,是決定該原則將評估哪些行銷動作。 您可使用下列其中一個選項來達成此目的:
查詢現有的行銷動作 look-up
您可以透過向/marketingActions
個端點之一發出GET要求,查詢要由您的原則評估的現有行銷動作。
API格式
視您要查詢Experience Platform提供的行銷動作或貴組織建立的自訂行銷動作而定,請分別使用marketingActions/core
或marketingActions/custom
端點。
GET /marketingActions/core
GET /marketingActions/custom
要求
下列請求使用marketingActions/custom
端點,它會擷取貴組織定義的所有行銷動作清單。
curl -X GET \
https://platform.adobe.io/data/foundation/dulepolicy/marketingActions/custom \
-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}'
回應
成功的回應會傳回找到的行銷動作總數(count
),並列出children
陣列中行銷動作本身的詳細資料。
{
"_page": {
"start": "sampleMarketingAction",
"count": 2
},
"_links": {
"page": {
"href": "https://platform.adobe.io/marketingActions/custom?{?limit,start,property}",
"templated": true
}
},
"children": [
{
"name": "sampleMarketingAction",
"description": "Marketing Action description.",
"imsOrg": "{ORG_ID}",
"created": 1550714012088,
"createdClient": "{CREATED_CLIENT}",
"createdUser": "{CREATED_USER}",
"updated": 1550714012088,
"updatedClient": "{UPDATED_CLIENT}",
"updatedUser": "{UPDATED_USER}",
"_links": {
"self": {
"href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/sampleMarketingAction"
}
}
},
{
"name": "newMarketingAction",
"description": "Another marketing action.",
"imsOrg": "{ORG_ID}",
"created": 1550793833224,
"createdClient": "{CREATED_CLIENT}",
"createdUser": "{CREATED_USER}",
"updated": 1550793833224,
"updatedClient": "{UPDATED_CLIENT}",
"updatedUser": "{UPDATED_USER}",
"_links": {
"self": {
"href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/newMarketingAction"
}
}
}
]
}
_links.self.href
children
陣列中的每個專案都包含所列行銷動作的URI ID。當您找到要使用的行銷動作時,請記錄其href
屬性的值。 此值會在建立原則的下一個步驟中使用。
建立新的行銷動作 create-new
您可以向/marketingActions/custom/
端點發出PUT要求,並在要求路徑結尾提供行銷動作的名稱,藉此建立新的行銷動作。
API格式
PUT /marketingActions/custom/{MARKETING_ACTION_NAME}
{MARKETING_ACTION_NAME}
要求
下列請求會建立名為「exportToThirdParty」的新自訂行銷動作。 請注意,請求承載中的name
與請求路徑中提供的名稱相同。
curl -X PUT \
https://platform.adobe.io/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty \
-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 '{
"name": "exportToThirdParty",
"description": "Export data to a third party"
}'
name
description
回應
成功的回應會傳回HTTP狀態201 (已建立)和新建立行銷動作的詳細資訊。
{
"name": "exportToThirdParty",
"description": "Export data to a third party",
"imsOrg": "{ORG_ID}",
"created": 1550713341915,
"createdClient": "{CREATED_CLIENT}",
"createdUser": "{CREATED_USER",
"updated": 1550713856390,
"updatedClient": "{UPDATED_CLIENT}",
"updatedUser": "{UPDATED_USER}",
"_links": {
"self": {
"href": "https://platform.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
}
}
}
_links.self.href
記錄新建立之行銷動作的URI ID,因為此URI ID將用於建立原則的下一個步驟。
建立原則 create-policy
建立新原則需要您提供行銷動作的URI ID,以及禁止該行銷動作的使用標籤運算式。
此運算式稱為原則運算式,而且是包含(A)標籤或(B)運運算元和運算元的物件,但不能同時包含兩者。 反過來,每個運算元也是原則運算式物件。 例如,如果有C1 OR (C3 AND C7)
標籤,可能會禁止將資料匯出至協力廠商的原則。 此運算式將指定為:
"deny": {
"operator": "OR",
"operands": [
{
"label": "C1"
},
{
"operator": "AND",
"operands": [
{
"label": "C3"
},
{
"label": "C7"
}
]
}
]
}
設定原則運算式後,您可以對/policies/custom
端點發出POST要求,以建立新的原則。
API格式
POST /policies/custom
要求
下列請求會建立名為「將資料匯出至第三方」的原則,方法是在請求承載中提供行銷動作和原則運算式。
curl -X POST \
https://platform.adobe.io/data/foundation/dulepolicy/policies/custom \
-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 '{
"name": "Export Data to Third Party",
"status": "DRAFT",
"marketingActionRefs": [
"../marketingActions/custom/exportToThirdParty"
],
"description": "Conditions under which data cannot be exported to a third party",
"deny": {
"operator": "OR",
"operands": [
{"label": "C1"},
{
"operator": "AND",
"operands": [
{"label": "C3"},
{"label": "C7"}
]
}
]
}
}'
marketingActionRefs
href
值的陣列,取得於先前的步驟。 雖然上述範例僅列出一個行銷動作,但也可提供多個動作。deny
marketingActionRefs
中參考的行銷動作。回應
成功的回應會傳回HTTP狀態201 (已建立)和新建立原則的詳細資訊。
{
"name": "Export Data to Third Party",
"status": "DRAFT",
"marketingActionRefs": [
"https://platform-stage.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
],
"description": "Conditions under which data cannot be exported to a third party",
"deny": {
"operator": "OR",
"operands": [
{
"label": "C1"
},
{
"operator": "AND",
"operands": [
{
"label": "C3"
},
{
"label": "C7"
}
]
}
]
},
"imsOrg": "{ORG_ID}",
"created": 1565651746693,
"createdClient": "{CREATED_CLIENT}",
"createdUser": "{CREATED_USER",
"updated": 1565651746693,
"updatedClient": "{UPDATED_CLIENT}",
"updatedUser": "{UPDATED_USER}",
"_links": {
"self": {
"href": "https://platform-stage.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3"
}
},
"id": "5d51f322e553c814e67af1a3"
}
id
記錄新建立之原則的URI ID,以便在下一個步驟中啟用該原則。
啟用原則
DRAFT
狀態,請注意,原則預設必須將其狀態設定為ENABLED
,才能參與評估。 請參閱原則強制執行的指南,瞭解如何為處於DRAFT
狀態的原則制定例外狀況的資訊。依預設,將status
屬性設定為DRAFT
的原則不會參與評估。 您可以透過向/policies/custom/
端點發出PATCH要求,並在要求路徑結尾提供原則的唯一識別碼,來啟用原則以供評估。
API格式
PATCH /policies/custom/{POLICY_ID}
{POLICY_ID}
id
值。要求
下列要求會對原則的status
屬性執行PATCH作業,將其值從DRAFT
變更為ENABLED
。
curl -X PATCH \
https://platform.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3
-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 '[
{
"op": "replace",
"path": "/status",
"value": "ENABLED"
}
]'
op
path
value
path
中指定的屬性的新值。 此要求會將原則的status
屬性設為「ENABLED」。回應
成功的回應傳回HTTP狀態200 (確定)和已更新原則的詳細資料,其status
現在設定為ENABLED
。
{
"name": "Export Data to Third Party",
"status": "ENABLED",
"marketingActionRefs": [
"https://platform-stage.adobe.io:443/data/foundation/dulepolicy/marketingActions/custom/exportToThirdParty"
],
"description": "Conditions under which data cannot be exported to a third party",
"deny": {
"operator": "OR",
"operands": [
{
"label": "C1"
},
{
"operator": "AND",
"operands": [
{
"label": "C3"
},
{
"label": "C7"
}
]
}
]
},
"imsOrg": "{ORG_ID}",
"created": 1565651746693,
"createdClient": "{CREATED_CLIENT}",
"createdUser": "{CREATED_USER}",
"updated": 1565723012139,
"updatedClient": "{UPDATED_CLIENT}",
"updatedUser": "{UPDATED_USER}",
"_links": {
"self": {
"href": "https://platform-stage.adobe.io/data/foundation/dulepolicy/policies/custom/5d51f322e553c814e67af1a3"
}
},
"id": "5d51f322e553c814e67af1a3"
}
後續步驟
依照本教學課程,您已成功建立行銷動作的資料使用原則。 您現在可以繼續有關強制資料使用原則的教學課程,以瞭解如何檢查原則違規並在您的體驗應用程式中處理這些違規。
如需Policy Service API中不同可用作業的詳細資訊,請參閱原則服務開發人員指南。 如需如何強制執行Real-Time Customer Profile資料原則的詳細資訊,請參閱有關強制對象區段遵守資料使用規定的教學課程。
若要瞭解如何在Experience Platform使用者介面中管理使用原則,請參閱原則使用者指南。