驗證及存取 Experience Platform API
本檔案逐步說明如何存取Adobe Experience Platform開發人員帳戶,進而呼叫Experience Platform API。 在本教學課程結束時,您將已產生或收集下列憑證,這些憑證需要作為所有Platform API呼叫中的標題:
{ACCESS_TOKEN}
{API_KEY}
{ORG_ID}
為了維護應用程式和使用者的安全性,對Experience Platform API的所有請求都必須使用OAuth等標準進行驗證和授權。
本教學課程涵蓋如何收集驗證Platform API呼叫所需的認證,如下方流程圖所述。 您可以在初始的一次性設定中收集大部分必要的認證。 然而,存取權杖必須每24小時重新整理一次。
先決條件 prerequisites
為了成功呼叫Experience Platform API,您必須具備下列條件:
- 有權存取Adobe Experience Platform的組織。
- 能夠新增您為產品設定檔的開發人員和使用者的Admin Console管理員。
- Experience Platform系統管理員,可授予您必要的屬性型存取控制項,以透過API在Experience Platform的不同部分執行讀取或寫入作業。
您也必須有Adobe ID才能完成本教學課程。 如果您沒有Adobe ID,可以使用下列步驟建立一個:
- 移至Adobe Developer Console。
- 選取 建立新帳戶。
- 完成註冊程式。
取得Experience Platform的開發人員和使用者存取權 gain-developer-user-access
在Adobe Developer Console上建立整合之前,您的帳戶必須擁有Adobe Admin Console中Experience Platform產品設定檔的開發人員和使用者許可權。
取得開發人員存取權 gain-developer-access
請連絡貴組織的Admin Console管理員,使用Admin Console將您新增為Experience Platform產品設定檔的開發人員。 請參閱Admin Console檔案以取得如何管理產品設定檔的開發人員存取權的特定指示。
一旦指派您為開發人員,您就可以開始在Adobe Developer Console中建立整合。 這些整合是從外部應用程式和服務到Adobe API的管道。
取得使用者存取權 gain-user-access
您的Admin Console管理員也必須將您新增為相同產品設定檔的使用者。 透過使用者存取權,您可以在UI中檢視您執行的API作業的結果。
如需詳細資訊,請參閱在 Admin Console中管理使用者群組的指南。
產生API金鑰(使用者端ID)和組織ID generate-credentials
在透過Admin Console授予您開發人員和使用者存取Platform的許可權後,下一步就是在Adobe Developer Console中產生您的{ORG_ID}
和{API_KEY}
認證。 這些認證只需產生一次,並可在未來平台API呼叫中重複使用。
將Experience Platform新增至專案 add-platform-to-project
移至Adobe Developer Console並使用您的Adobe ID登入。 接下來,請依照教學課程中概述的步驟,在Adobe Developer Console檔案中建立空白專案。
建立新專案後,請在 專案概述 畫面上選取 新增API。
新增API 畫面會出現。 選取Adobe Experience Platform的產品圖示,然後選擇 Experience PlatformAPI,再選取 下一步。
選取OAuth伺服器對伺服器驗證型別 select-oauth-server-to-server
接著,選取OAuth伺服器對伺服器驗證型別,以產生存取權杖並存取Experience PlatformAPI。
選取要整合的產品設定檔 select-product-profiles
在 設定API 畫面中,選取 AEP-Default-All-Users。
當您準備好時,選取 儲存已設定的API。
以下的影片教學課程也提供上述步驟的逐步解說,以設定與Experience Platform API的整合:
收集認證 gather-credentials
將API新增至專案後,專案的 Experience Platform API 頁面會顯示所有呼叫Experience Platform API時所需的下列認證:
在Developer Consle中新增API之後的
{API_KEY}
(使用者端識別碼){ORG_ID}
(組織識別碼)
產生存取權杖 generate-access-token
下一步是產生{ACCESS_TOKEN}
認證以用於Platform API呼叫。 不像{API_KEY}
和{ORG_ID}
的值,必須每24小時產生一次新Token,才能繼續使用Platform API。 選取 產生存取權杖,如下所示。
[已棄用]{class="badge negative"}產生JSON Web權杖(JWT) jwt
下一步是根據您的帳戶憑證產生JSON Web權杖(JWT)。 此值用於產生您的{ACCESS_TOKEN}
認證,以用於Platform API呼叫,必須每24小時重新產生一次。
note important |
---|
IMPORTANT |
在本教學課程中,以下步驟會概述如何在Developer Console中產生JWT。 不過,此產生方法只應用於測試和評估目的。 |
如要正常使用,必須自動產生JWT。 如需如何以程式設計方式產生JWT的詳細資訊,請參閱Adobe Developer上的服務帳戶驗證指南。 |
在左側導覽中選取 服務帳戶(JWT),然後選取 產生JWT。
在 產生自訂JWT 下提供的文字方塊中,貼上您先前在將Platform API新增至服務帳戶時產生的私密金鑰內容。 然後,選取 產生Token。
頁面會更新以顯示產生的JWT,以及可讓您產生存取權杖的範例cURL命令。 在本教學課程中,請選取 產生的JWT 旁的 複製,將權杖複製到剪貼簿。
產生存取權杖
產生JWT後,您可以在API呼叫中使用它來產生您的{ACCESS_TOKEN}
。 不像{API_KEY}
和{ORG_ID}
的值,必須每24小時產生一次新Token,才能繼續使用Platform API。
要求
以下請求會根據承載中提供的認證產生新的{ACCESS_TOKEN}
。 此端點僅接受表單資料作為其裝載,因此必須向其指定multipart/form-data
的Content-Type
標頭。
code language-shell |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 | |
---|---|
屬性 | 說明 |
{API_KEY} |
您在先前的步驟中擷取的{API_KEY} (使用者端識別碼)。 |
{SECRET} |
您在先前步驟中擷取的使用者端密碼。 |
{JWT} |
您在先前步驟產生的JWT。 |
note note |
---|
NOTE |
您可以使用相同的API金鑰、使用者端密碼和JWT,為每個工作階段產生新的存取權杖。 這可讓您在應用程式中自動產生存取權杖。 |
回應
code language-json |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 | |
---|---|
屬性 | 說明 |
token_type |
型別 of 正在傳回權杖。 對於存取權杖,此值一律為bearer 。 |
access_token |
產生的{ACCESS_TOKEN} 。 所有Platform API呼叫都需要以這個值做為Authentication 標題,且前置詞為Bearer 。 |
expires_in |
存取Token過期前的剩餘毫秒數。 此值達到0後,必須產生新的存取權杖才能繼續使用Platform API。 |
測試存取認證 test-credentials
收集完所有三個必要的認證(存取權杖、API金鑰和組織ID)後,您可以嘗試進行下列API呼叫。 此呼叫列出貴組織可用的所有標準Experience Data Model (XDM)類別。 在Postman中匯入並執行呼叫。
要求
curl -X GET https://platform.adobe.io/data/foundation/schemaregistry/global/classes \
-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}}'
回應
如果您的回應與下方所示的回應類似,表示您的認證有效且運作正常。 (此回應已因空間而遭截斷。)
{
"results": [
{
"title": "XDM ExperienceEvent",
"$id": "https://ns.adobe.com/xdm/context/experienceevent",
"meta:altId": "_xdm.context.experienceevent",
"version": "1"
},
{
"title": "XDM Individual Profile",
"$id": "https://ns.adobe.com/xdm/context/profile",
"meta:altId": "_xdm.context.profile",
"version": "1"
}
]
}
取得必要的屬性型存取控制許可權 get-abac-permissions
若要存取或修改Experience Platform中的數個資源,您必須擁有適當的存取控制許可權。 系統管理員可以授與您所需的許可權。 在章節中取得有關管理角色的API認證的詳細資訊。
有關系統管理員如何授與所需許可權以透過API存取Platform資源的詳細資訊,也可在以下教學影片中取得:
使用Postman驗證及測試API呼叫 use-postman
Postman是熱門工具,可讓開發人員探索及測試RESTful API。 您可以使用Experience Platform Postman集合和環境來加速使用Experience Platform API。 深入瞭解在Experience Platform中使用Postman以及開始使用集合和環境。
有關將Postman與Experience Platform集合和環境一起使用的詳細資訊,也可在以下影片教學課程中取得:
下載並匯入Postman環境以搭配Experience PlatformAPI使用
使用Postman集合來產生存取權杖
下載Identity Management Service Postman集合並觀看以下影片,瞭解如何產生存取權杖。
下載Experience PlatformAPI Postman集合併與API互動
系統管理員:透過Experience Platform許可權授予開發人員和API存取控制 grant-developer-and-api-access-control
在Adobe Developer Console上建立整合之前,您的帳戶必須擁有Adobe Admin Console中Experience Platform產品設定檔的開發人員和使用者許可權。
將開發人員新增至產品設定檔 add-developers-to-product-profile
移至Admin Console並使用您的Adobe ID登入。
選取 產品,然後從產品清單中選取 Adobe Experience Platform。
Admin Console 上的產品清單
從 產品設定檔 索引標籤中,選取 AEP-Default-All-Users。 或者,使用搜尋列透過輸入名稱來搜尋產品描述檔。
選取 開發人員 標籤,然後選取 新增開發人員。
輸入開發人員的 電子郵件或使用者名稱。 有效的電子郵件或使用者名稱將顯示開發人員詳細資料。 選取「儲存」。
開發人員已成功新增,並出現在開發人員標籤上。
將API指派給角色
系統管理員可以將API指派給Experience PlatformUI中的角色。
選取 許可權 以及您要將API新增到的角色。 選取 API認證 標籤,然後選取 新增API認證。
選取角色中的
選取您要新增至角色的API,然後選取[儲存]。
您會返回API認證標籤,其中列出新加入的API。
其他資源 additional-resources
請參閱以下連結的其他資源,以取得開始使用Experience PlatformAPI的更多說明
後續步驟 next-steps
閱讀本檔案後,您已收集並成功測試您的Platform API存取認證。 您現在可以跟隨在檔案中提供的範例API呼叫。
除了您在本教學課程中收集的驗證值之外,許多Platform API也需要提供有效的{SANDBOX_NAME}
作為標頭。 如需詳細資訊,請參閱沙箱概觀。