View a markdown version of this page

最佳實務 - AWS Partner Central

AWS Partner Central API 參考已重組。如需支援的 API 操作的詳細資訊,請參閱 AWS Partner Central API 參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

最佳實務

對事件做出反應

從AWS Partner Central API 處理事件時,請確保您的處理邏輯具有處理重複事件的等冪性。請考慮根據您的應用程式需求批次處理或選擇性擷取詳細資訊,而不是針對每個事件立即進行 GetOpportunity 呼叫。對於不中斷的操作,請注意配額

實作樂觀鎖定

樂觀鎖定可防止在並行更新期間意外的資料覆寫。以下是典型的案例:

  1. 合作夥伴從其 CRM 系統擷取機會。

  2. 使用者A更新AWS Partner Central 上的機會。

  3. 使用者透過 CRM 整合同時B更新相同的機會。

  4. 如果資料變更,CRM 系統會嘗試上傳資料,但會傳回 ConflictException

  5. 使用者檢閱錯誤並手動解決衝突的資料。

若要避免這種情況,所有 UpdateOpportunity 請求都必須包含 參數,您可以從先前的 CreateOpportunityUpdateOpportunityGetOpportunity 動作取得該LastModifiedDate參數。只有在 LastModifiedDate符合我們的系統時,更新才會成功。如果沒有,您必須LastModifiedDate使用 GetOpportunity 擷取最新的 ,並重新嘗試更新。

在 CRM 和AWS Partner Central 之間同步資料

請務必讓您的系統與 Partner Central 的最新資料保持同步。以下是確保系統反映最新資料的兩個策略:

使用事件 (建議)

  1. 使用 ListOpportunities 載入資料。

  2. 訂閱機會事件。

  3. 回應新的機會或變更。

    • 當您收到 Opportunity CreatedOpportunity UpdatedEngagement Invitation Accepted事件時,請使用 GetOpportunity來擷取最新的資料。

    • 當您收到Engagement Invitation Rejected事件時,請移除對應的機會。

使用 ListOpportunities 輪詢

  1. 使用 ListOpportunities 載入資料。

  2. 選擇輪詢頻率,確保不會太頻繁,以免耗盡您的每日讀取配額

  3. LastModifiedDate 從儲存的資料中識別最新的 ,確保其源自於AWS。

  4. 呼叫 ListOpportunities 時,請使用AfterLastModifiedDate篩選條件中的時間戳記。

    { "FilterList": [ { "Name": "AfterLastModifiedDate", "ValueList": [ "2023-05-01T20:37:46Z" ] // Replace with actual timestamp of your last synced data } ] }
  5. AWS將傳回在時間戳記上指定的值之後建立或更新的機會。

  6. 使用 逐一查看所有傳回的頁面NextToken,並使用 GetOpportunity 更新系統的資料。

    { "NextToken": "AAMA-EFRSN...PZa942D", "FilterList": [ { "Name": "AfterLastModifiedDate", "ValueList": [ "2023-05-01T20:37:46Z" ] // Replace with actual timestamp of your last synced data } ] }