次の方法で共有


API を使用して顧客の同意を確認し、MCA の契約を作成する

重要

この記事は、2025 年 4 月 11 日に開始される CSP 統合サンドボックスでのみ使用できるエクスペリエンスに関するものです。 このエクスペリエンスは、2025 年 7 月 10 日に一般公開される予定です。

適用対象: パートナー センター

適用されないのは以下の通り: 21Vianet が運営するパートナーセンター | 米国政府向け Microsoft Cloud のパートナーセンター

パートナー センターでは現在、Microsoft パブリック クラウドでのみ、Microsoft 顧客契約 (MCA) に対する顧客の同意の確認がサポートされています。 この記事では、MCA に対する顧客の同意を確認または再確認し、特定の顧客の契約を作成する方法について説明します。 この情報は、間接プロバイダーおよび直接請求 CSP パートナーに適用されます。 間接リセラーは、このエクスペリエンスを使用できません。

前提条件

  • パートナー センター認証で説明されている資格証明。 このシナリオでは、AppOnly 認証のみがサポートされます。

  • MCA を受け入れた顧客組織のユーザーに関する情報。次のものが含まれます。

    • 名(ファーストネーム)
    • メール アドレス
    • 電話番号 (省略可能)
    • 会社名

顧客に対して次の値が変更された場合、パートナー センターでは、その顧客に対して別の契約を作成できます。 名、姓、電子メール アドレス、電話番号は異なる必要があります。 それ以外の場合、重複するレコードが作成されるため、パートナーは次のエラー コードを受け取ります。

{
"code": 600061,
"message": "A partner confirmed agreement already exists for the customer.",
"description": "A partner confirmed agreement already exists for the customer.",
"errorName": "PartnerConfirmedAgreementAlreadyExists",
"isRetryable": false,
"parameters": {},
"errorMessageExtended": "InternalErrorCode=600061"
}

API を使用してパートナー認証と契約を作成する

拡張構成証明 API は、パートナーがチェックアウト フロー内に埋め込むことができる顧客構成証明を作成および管理するのに役立ちます。 パートナーは、顧客の証明書を使用して、特定の顧客との契約を作成できます。

MCA に対する顧客の同意を確認または再確認し、顧客の契約を作成するには:

  1. 顧客のために、拡張顧客証明 API を使用して、新しい証明オブジェクト (証明ID) を作成します。

  2. MCA を受け入れるために任意のチェックアウト フローで 使用できる埋め込み可能なコンポーネント の URL を構築します。 Microsoft が提供するパラメーター化されたリンクを使用して、お客様が MCA を確認し、同じものを受け入れるようにする必要があります。

  3. Create agreement API を使用して構成証明 ID を使って契約を作成します。

強化された顧客証明 API の使用

エンドポイント

POST https://api.partnercenter.microsoft.com/v{version}/attestations/enhanced

説明

顧客の構成証明 ID を作成します。これは、その顧客の MCA を証明するために利用できます。

権限

  • 認証が必要です。

  • PartnerAuthorize(PartnerApiResource.PartnerConfirmation, ResourceAccess.Create) が必要です。

要求本文

フィールド タイプ 必須 説明
文字列 イエス 顧客の国コード (ISO 3166-1 alpha-2)
言語 文字列 イエス 契約の優先言語
会社名 文字列 イエス 契約に同意する会社の名前
signatoryFirstName 文字列 イエス 契約に署名する個人の名
signatoryLastName 文字列 イエス 契約に署名する個人の姓
メールアドレス 文字列 イエス 署名者のメール アドレス
phoneNumber 文字列 イエス 署名者の電話番号

要求の例

{ "country": "US", "language": "en", "companyName": "Contoso Ltd.", "signatoryFirstName": "John", "signatoryLastName": "Doe", "emailAddress": "johndoe@contoso.com", "phoneNumber": "+1-555-555-5555" }

[応答]

成功 (201 作成済み)

{ "attestationId": "00000000-0000-0000-0000-000000000000" }

エラー応答

  • 400 無効な要求: 要求形式が無効です。

  • 401 未承認: 承認が見つからないか無効です。

attestationId の既定の有効期限は 30 分です。 有効期限は構成可能で、最大 7 日間延長できます。

埋め込み可能コンポーネントの使用

Enhanced Customer Attestation API によって返される AttestationId は、埋め込み可能なコンポーネントで MCA を顧客に表示するために、以下のリンクのパラメーターとして使用できます。 パートナーは、Microsoft が提供するパラメーター化されたリンクを使用して、お客様が MCA を確認し、同じものを受け入れるようにする必要があります。

<iframe src="https://cdn.partner.microsoft.com/mca/?attestationid={id}"></iframe> 

リンクは MCA 契約をレンダリングし、"同意する契約" ボタンが含まれています。同じものを選択すると、MCA を受け入れるという顧客の意図をキャプチャする POST API が呼び出されます。 パートナーが Create Agreement API を正常に呼び出す前提条件です。

契約 API の作成

顧客に代わって契約を作成します。

POST https://api.partnercenter.microsoft.com/v{version}/customers/{customer_id}/agreements

URI パラメーター

名前 使用箇所 必須 タイプ 説明
顧客ID パス 正しい 文字列 顧客 ID
バージョン パス 正しい 文字列

リクエストヘッダー

メディアの種類: "application/json"

名前 必須 タイプ 説明
権限 正しい 文字列 認証ベアラー トークン
ms-correlationid 文字列 要求を内部的に追跡するために使用されます。 ms-correlationid が指定されていない場合、サーバーは要求ごとに新しいものを生成します
ms-cv 文字列 要求を内部的に追跡するために使用されます。 ms-cv が指定されていない場合、サーバーは要求ごとに新しいものを生成します
ms-requestid 文字列 リクエストの冪等性を保証するために使用されます。 ms-requestid が指定されていない場合、サーバーは要求ごとに新しいものを生成します

要求本文

メディアの種類: "application/json"

名前 タイプ 説明
契約 Microsoft.Partner.Service.Customers.Contracts.V1.Agreement 合意

応答

名前 タイプ 説明
200 OK(正常に処理されました) オブジェクト OK メディアの種類: "application/json"、"text/json"、"application/xml"、"text/xml"
201 作成済み Microsoft.Partner.Service.Customers.Contracts.V1.Agreement 要求が成功しました。 契約が正常に作成されました。 メディアの種類: "application/json"、"text/json"、"application/xml"、"text/xml"

定義

名前 説明
Microsoft.Partner.Service.Customers.Contracts.V1.Agreement
Microsoft.Partner.Service.Customers.Contracts.V1.Contact

Microsoft.Partner.Service.Customers.Contracts.V1.Agreement

名前 タイプ 説明
契約リンク 文字列
dateAgreed 文字列 顧客が契約に同意した日付
主たる連絡先 Microsoft.Partner.Service.Customers.Contracts.V1.Contact MCA を受け入れた顧客組織のユーザーに関する情報 。firstName、lastName、email、phoneNumber (省略可能) 注: attestationId が指定されている場合、このフィールドは空白のままにすることができます。 空白のままにしない場合、ここでの情報は、拡張構成証明ドキュメントの仕様と一致している必要があります。 ここで共有されている primaryContact 情報と拡張顧客構成証明 API の情報に対して検証は行われません。 このフィールドは、たとえばパートナーが v1 または 以前の構成証明 API を使用している場合など、attestationId が指定されていない場合にのみ必要です。 詳細については、この記事の 拡張顧客構成証明 API を参照してください。

ペイロードを理解するための 要求の例 を参照してください。
テンプレートID 文字列 顧客が承認した契約タイプのユニーク識別子。 MCA の契約メタデータを取得することで、MCA の templateId を取得できます。 詳細については、MCA の契約メタデータの取得を参照してください。
enum:
- MicrosoftCloudAgreement(マイクロソフト クラウド契約)
- MicrosoftCustomerAgreement(マイクロソフト カスタマー契約)
顧客が受け入れる契約の種類。 顧客が MCA を受け入れた場合は、"MicrosoftCustomerAgreement" を使用します。
ユーザーID 文字列
attestationId (新規) guid 拡張顧客証明 API を使用した 拡張審査証明書の ID。

Microsoft.Partner.Service.Customers.Contracts.V1.Contact

名前 タイプ 説明
メール 文字列
ファーストネーム 文字列
lastName 文字列
phoneNumber 文字列

要求ペイロードの例

拡張構成証明 API を使用する場合のサンプル ペイロード

{"userId": "80fdc6b6-ad7c-4783-be01-7b8002d2a949","attestationId": "d7cb60a6-b8d3-486a-b7f5-b17ef03d3427","templateId": "117a77b0-9360-443b-8795-c6dedc750cf9","dateAgreed": "2025-06-03T16:42:12","type": "MicrosoftCustomerAgreement"} 

ユーザーが新しい拡張 API ではなく、(非推奨になるまで) 構成証明の既存のメソッドを使用する場合は、プライマリ連絡先の詳細を含む Create Agreement API を呼び出すことができます