

 AWS パートナーセントラル API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、 [AWS パートナーセントラル API リファレンス](https://docs.aws.amazon.com/partner-central/latest/APIReference/Welcome.html)を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS Partner Central Selling API の通知
<a name="selling-api-events"></a>

販売 API のイベントは、ステータスの変更や機会の詳細に関するリアルタイムの通知を提供します。これらのイベントは、システムをAWS Partner Central と同期させ、タイムリーな応答と更新を確保するのに役立ちます。

**Topics**
+ [イベントをモニタリングするための前提条件を満たす](#events-prerequites)
+ [イベントをモニタリングするように Amazon EventBridge を設定する](#eventbridge-setup)
+ [API イベントの販売の詳細](#learn-about-events)

## イベントをモニタリングするための前提条件を満たす
<a name="events-prerequites"></a>

ユーザーには、 Partner Central 販売 API によって発行されたイベントにアクセスして管理するための適切な IAM アクセス許可が必要です。EventBridge で使用可能なアクション、リソース、および条件キーの詳細については、[「Amazon EventBridge ユーザーガイド」の「Amazon EventBridge での IAM ポリシー条件](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-use-conditions.html#events-pattern-detail-type)*EventBridge*」を参照してください。条件キーの 1 つは です。これは`events:detail-type`、特定のイベントタイプにアクセス許可の範囲を設定するために使用できます。

次のポリシー例は、提案されたイベントのアクセス許可をカスタマイズして範囲を設定する方法を示しています。`AllowPutRuleForPartnercentralSellingEvents` ステートメントは、`aws.partnercentral-selling`ソースからのイベントに対してのみ、ルールの作成を許可します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "AllowPutRuleForPartnercentralSellingEvents",
    "Effect": "Allow",
    "Action": "events:PutRule",
    "Resource": "*",
    "Condition": {
      "ForAllValues:StringEquals": {
        "events:source": "aws.partnercentral-selling"
      }
    }
  }
}
```

------

## イベントをモニタリングするように Amazon EventBridge を設定する
<a name="eventbridge-setup"></a>

販売 API イベントをモニタリングするには、キャプチャするイベントに一致する EventBridge ルールを作成します。AWS Management ConsoleまたはAWS SDKs を使用して、ルールを作成および管理できます。以下のセクションでは、両方の方法を使用してルールを作成する方法について説明します。使用する方法にかかわらず、米国東部 (バージニア北部) `us-east-1`リージョンでルールを作成する必要があります。

### AWS Management Consoleセットアップ
<a name="eventbridge-console-setup"></a>

を使用して EventBridge ルールを設定するにはAWS Management Console、[「Amazon EventBridge ユーザーガイド」の「Amazon EventBridge のイベントに対応するルールの作成](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html)*EventBridge*」の手順に従います。ルールを作成するときは、イベントバスを**デフォルト**に設定し、米国東部 (バージニア北部) `us-east-1`リージョンでルールを作成する必要があります。

イベントルールの例を次に示します。

```
{
    "source": ["aws.partnercentral-selling"],
    "detail": {
        "catalog": ["AWS"]
    }
}
```

### AWS SDK のセットアップ
<a name="eventbridge-sdk-setup"></a>

AWS SDKs を使用して、プログラムで EventBridge ルールを作成および管理できます。詳細については、「*Amazon EventBridge API リファレンス*」の「[PutRule](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutRule.html)」を参照してください。

次の例では、AWS SDK for Python (Boto3) を使用しています。

```
import boto3

client = boto3.client('events', region_name='us-east-1')

response = client.put_rule(
    Name='MyOpportunityCreatedRule',
    EventPattern=
    '{
        "source": ["aws.partnercentral-selling"], 
        "detail-type": ["Opportunity Created"], 
        "detail": {"catalog": ["AWS"]}
    }',
    State='ENABLED'
)
print('Rule ARN:', response['RuleArn'])
```

## API イベントの販売の詳細
<a name="learn-about-events"></a>

以下のセクションでは、販売 API イベントタイプ、それらをトリガーするシナリオ、およびイベント例について説明します。

### イベントタイプ
<a name="types-of-events"></a>

以下は、イベントタイプとそのトリガーです。
+ [作成されたオポチュ](#opportunity-created)ニティ: 新しいオポチュニティが作成されるとトリガーされます。
+ [オポチュニティの更新](#opportunity-updated): オポチュニティ (オポチュニティまたは対応するオポチュニティ概要)AWSが更新されるとトリガーされます。
+ [エンゲージメント招待の作成](#engagement-invitation-created):AWS紹介招待の作成時にトリガーされます。
+ [Engagement Invitation Accepted](#engagement-invitation-accepted): パートナーがAWS Engagement Invitation を受け入れ、機会に対する とのコラボレーションへの関心を確認するAWSとトリガーされます。
+ [エンゲージメントの招待が拒否されました: ](#engagement-invitation-rejected)パートナーがAWSエンゲージメントの招待を拒否するとトリガーされます。
+ [エンゲージメント招待の有効期限切れ](#engagement-invitation-expired): このイベントは、パートナーが EngagementInvitation を拒否したときにトリガーされます。招待の有効期限が切れたことを送受信パートナーに通知します。
+ [エンゲージメントメンバーの追加](#engagement-member-added): このイベントは、招待を承諾した後に新しいメンバーがエンゲージメントに参加するとトリガーされます。これは、エンゲージメントに追加された新しいメンバーについて、エンゲージメントのすべての現在のメンバーに通知します。
+ [エンゲージメントリソーススナップショットの作成](#engagement-resource-snapshot-created): このイベントは、エンゲージメントに関連付けられたリソース (機会など) のスナップショットの新しいリビジョンが作成されたときにトリガーされます。関連するリソーススナップショットの変更について、エンゲージメントの現在のメンバー全員に通知します。
+ [作成されたエンゲージメント](#engagement-created): 新しいエンゲージメントが作成されるとトリガーされます。
+ [エンゲージメントの更新](#engagement-updated): エンゲージメントが更新されるとトリガーされます。

### イベントシナリオ
<a name="events-summary"></a>

次の表は、イベントがさまざまなシナリオでどのように動作するかを示しています。これらのシナリオでは、次の前提が適用されます。
+ AWSは、これらのシナリオのパートナーでもあります。
+ `ResourceSnapshotJob` はパートナーによって正しく設定されています。
+ オポチュニティで更新されたフィールドは、リソーススナップショットのオポチュニティテンプレートにも記載されています。


| **パートナーとしてのユーザーによるアクション** | **受信したイベント** | **参加者タイプ** | 
| --- | --- | --- | 
| オポチュニティを作成する | 作成されたオポチュニティ |  | 
| StartEngagementFromOpportunityTask を使用してオポチュニティを送信する | 機会の更新、エンゲージメントの作成、エンゲージメントリソーススナップショットの作成、エンゲージメントメンバーの追加、エンゲージメント招待の作成 |  | 
| AWSは送信されたオポチュニティを承認します | エンゲージメント招待の承諾、エンゲージメントメンバーの追加、オポチュニティの更新、エンゲージメントリソーススナップショットの作成 |  | 
| AWSは送信されたオポチュニティを拒否します | エンゲージメント招待の拒否、機会の更新、エンゲージメントリソーススナップショットの作成 |  | 
| AWS Marketplaceオファーをオポチュニティに関連付ける | オポチュニティの更新 |  | 
| ソリューションをオポチュニティに関連付ける | 機会が更新され、エンゲージメントリソーススナップショットが作成されました |  | 
| オポチュニティを更新する | 機会の更新、エンゲージメントリソーススナップショットの作成 ( ResourceSnapshotJob がセットアップされ、フィールドの更新がテンプレートにある場合はオプション) |  | 
| AWSがオポチュニティを更新する | 機会が更新され、エンゲージメントリソーススナップショットが作成されました |  | 
| エンゲージメントに別のパートナーを招待する | エンゲージメントの招待が作成されました | 送信者 | 
| エンゲージメントへの参加への招待がパートナーによって承諾される | エンゲージメント招待の承諾、エンゲージメントメンバーの追加 | 送信者 | 
| エンゲージメントへの招待がパートナーによって拒否されました | エンゲージメントの招待が拒否されました | 送信者 | 
| エンゲージメントへの参加の招待がパートナーによって 15 日間処理されない | エンゲージメントの招待の有効期限が切れました | 送信者 | 
| 別のパートナーからエンゲージメントへの参加の招待を受け取る | エンゲージメントの招待が作成されました | レシーバー | 
| 別のパートナーからの招待を受け入れて、 経由でエンゲージメントに参加する StartEngagementByAcceptingInvitationTask | エンゲージメント招待の承諾、エンゲージメントメンバーの追加、オポチュニティの作成、オポチュニティの更新、エンゲージメントリソーススナップショットの作成 | レシーバー | 
| 別のパートナーからのエンゲージメントへの参加の招待を拒否した場合 | エンゲージメントの招待が拒否されました | レシーバー | 
| 15 日間、別のパートナーからのエンゲージメントへの参加を招待しない | エンゲージメントの招待の有効期限が切れました | レシーバー | 
| エンゲージメントを作成する | 作成されたエンゲージメント | 送信者 | 
| エンゲージメントを更新する | エンゲージメントの更新 | 送信者、受信者 | 

### イベントの例
<a name="example-rules"></a>

以下のセクションでは、前のセクションで示したイベントの例を示します。

**Topics**
+ [作成されたオポチュニティ](#opportunity-created)
+ [オポチュニティの更新](#opportunity-updated)
+ [エンゲージメントの招待が作成されました](#engagement-invitation-created)
+ [エンゲージメントの招待が承諾されました](#engagement-invitation-accepted)
+ [エンゲージメントの招待が拒否されました](#engagement-invitation-rejected)
+ [エンゲージメントの招待の有効期限が切れました](#engagement-invitation-expired)
+ [エンゲージメントメンバーの追加](#engagement-member-added)
+ [エンゲージメントリソーススナップショットの作成](#engagement-resource-snapshot-created)
+ [作成されたエンゲージメント](#engagement-created)
+ [エンゲージメントの更新](#engagement-updated)

#### 作成されたオポチュニティ
<a name="opportunity-created"></a>

パートナーは、次の目的でこのイベントを使用します。
+ 新しいオポチュニティが作成されたことをユーザーに通知します。
+ CRM システムの更新や、新しいオポチュニティの作成に関する営業チームへの通知などの自動ワークフローをトリガーします。

次の例は、一般的なオポチュニティ作成イベントを示しています。

```
{
    "version": "1",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "source": "aws.partnercentral-selling",
    "detail-type": "Opportunity Created",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "account": "123456789012",
    "detail": {
        "schemaVersion": "{{<version number>}}",
        "catalog": "{{<Sandbox | AWS>}}",
        "opportunity": {
            "identifier": "String"
        }
    }
}
```

#### オポチュニティの更新
<a name="opportunity-updated"></a>

パートナーは、次の目的でこのイベントを使用します。
+ 既存のオポチュニティが更新されたことをユーザーに通知します。
+ CRM システムの更新や営業チームへの通知などの自動ワークフローをトリガーします。

次の例は、一般的なオポチュニティ更新イベントを示しています。

```
{
    "version": "1",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "source": "aws.partnercentral-selling",
    "detail-type": "Opportunity Updated",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "account": "123456789012",
    "detail": {
        "schemaVersion": "{{<version number>}}",
        "catalog": "{{<Sandbox | AWS>}}",
        "opportunity": {
             "identifier": "String"
        }
    }
}
```

#### エンゲージメントの招待が作成されました
<a name="engagement-invitation-created"></a>

パートナーは、次の目的でこのイベントを使用します。
+ 受信した新しい EngagementInvitation をユーザーに通知します。
+ CRM システムの更新や営業チームへの通知など、招待を承諾または拒否する自動ワークフローをトリガーします。

次の例は、一般的なエンゲージメント招待作成イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-15T12:34:56Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"
    ],
    "detail": {
      "catalog": "AWS",
      "engagementInvitation": {
        "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
        "id": "engi-v7p8z56whnauo",
        "engagementId": "eng-12345678901234",      
        "senderAccountId": "string",
        "receiverAccountId": "string",      
        "senderCompanyName": "string",
        "expirationDate": "string",
        "participantType": "Enum", //Sender/Receiver
		"payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
      }
    }
}
```

#### エンゲージメントの招待が承諾されました
<a name="engagement-invitation-accepted"></a>

パートナーは、このイベントを使用して以下を行います。
+ EngagementInvitation が受け入れられたことをユーザーに通知します。
+ エンゲージメントの新しいパートナーを反映するように内部レコードを更新します。
+ 自動ワークフローをトリガーしてデータを同期するか、新しいエンゲージメントメンバーについて他のチームメンバーに通知します。

次の例は、一般的なエンゲージメント招待の承諾イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Accepted",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "resources": ["arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"],
    "detail": {
        "catalog": "AWS",
        "engagementInvitation": {
            "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
            "id": "engi-v7p8z56whnauo",
            "engagementId": "eng-12356whnauo",       
            "participantType": "Enum", //Sender/Receiver
            "senderAccountId": "string",
            "receiverAccountId": "string",
            "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
        }
    }
}
```

#### エンゲージメントの招待が拒否されました
<a name="engagement-invitation-rejected"></a>

パートナーは、このイベントを使用して以下を行います。
+ EngagementInvitation が拒否されたことをユーザーに通知します。
+ 拒否された招待を反映するように内部レコードを更新します。
+ 拒否についてセールスチームに通知するなど、必要なワークフローをトリガーします。

次の例は、一般的なエンゲージメント招待の拒否イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Rejected",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-17T09:48:27Z",
    "region": "us-east-1",
    "resources": ["arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"],
    "detail": {
        "catalog": "AWS",
        "engagementInvitation": {
            "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
            "id": "engi-v7p8z56whnauo",
            "engagementId": "eng-12356whnauo",
            "participantType": "Enum", //Sender/Receiver
            "senderAccountId": "string",
            "receiverAccountId": "string",    
            "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation 
        } 
    }
}
```

#### エンゲージメントの招待の有効期限が切れました
<a name="engagement-invitation-expired"></a>

パートナーは、このイベントを使用して以下を行います。
+ EngagementInvitation の有効期限が切れており、対応できなくなったことをユーザーに通知します。
+ 期限切れの招待を反映するように内部レコードを更新します。
+ 期限切れの招待をセールスチームに通知するなど、必要なワークフローをトリガーします。

次の例は、一般的なエンゲージメント招待の有効期限が切れたイベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Expired",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",    
      "engagementInvitation": {
        "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
        "id": "engi-v7p8z56whnauo",
        "engagementId": "eng-12356whnauo",        
        "participantType": "Enum", //Sender/Receiver
        "senderAccountId": "string",
        "receiverAccountId": "string",
        "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
      }  
    }
}
```

#### エンゲージメントメンバーの追加
<a name="engagement-member-added"></a>

パートナーは、このイベントを使用して以下を行います。
+ エンゲージメントメンバーシップの変更をユーザーに通知します。
+ 新しいエンゲージメントメンバーを反映するように内部レコードを更新します。
+ チームメンバーに変更を通知するなど、必要なワークフローをトリガーします。

次の例は、一般的なエンゲージメントメンバー追加イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Member Added",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",
      "engagement": {
        "id": "eng-v7p8z56whnauo"
      },
      "engagementMember": {
        "accountId": "string",
        "companyName": "string"
      }
    }
}
```

#### エンゲージメントリソーススナップショットの作成
<a name="engagement-resource-snapshot-created"></a>

パートナーはこのイベントを使用して、エンゲージメントに関連するリソースの変更を追跡し、CRM システムの更新や営業チームへの通知などの自動ワークフローをトリガーします。スナップショットテンプレートは、更新のタイプを決定します。

`OpportunitySummaryView`  
+ エンゲージメントが更新されたことをエンゲージメントのすべてのメンバーに通知します。

`AwsOpportunitySummaryFullView`  
+ AWS がエンゲージメント内の機会に対して特に行った更新を追跡します。
+ この通知とスナップショットは、オポチュニティ所有者にのみ表示されます。
+ `OpportunitySummaryView` テンプレートでは利用できない、ディールサイジングの更新が含まれています。

次の例は、一般的なエンゲージメントリソーススナップショット作成イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Resource Snapshot Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",
      "resourceSnapshot": {
        "arn": "arn:aws:partnercentral-selling:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo/resource/Opportunity/o-12312/template/temp-name/snapshot/snapshot-19232",
        "engagementId": "eng-v7p8z56whnauo",
        "resourceType": "Opportunity",      
        "resourceId" : "O123211231",
        "createdBy": "123123123123",
        "targetMemberAccounts": ["123123123123", "aws"], 
        "resourceSnapshotTemplateName": "temp-name"
      }
    }
}
```

#### 作成されたエンゲージメント
<a name="engagement-created"></a>

パートナーは、このイベントを使用して以下を行います。
+ 新しいエンゲージメントが作成されたことをユーザーに通知します。
+ CRM システムの更新や、新しいエンゲージメントの作成に関するセールスチームへの通知などの自動ワークフローをトリガーします。

次の例は、一般的なエンゲージメント作成イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo"
    ],
    "detail": {
        "catalog": "AWS",
        "engagement": {
            "engagementArn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo",
            "engagementId": "eng-567a1j5hxp35lo",
            "CreatedAt": "2023-04-18T18:20:15Z",
            "CreatedBy": "aws",
            "ContextTypes": ["Lead"]
            
        }
    }
}
```

#### エンゲージメントの更新
<a name="engagement-updated"></a>

パートナーは、このイベントを使用して以下を行います。
+ 既存のエンゲージメントが更新されたことをユーザーに通知します。
+ CRM システムの更新や営業チームへの通知などの自動ワークフローをトリガーします。

次の例は、一般的なエンゲージメント更新イベントを示しています。

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Updated",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo"
    ],
    "detail": {
        "catalog": "AWS",
        "engagement": {
            "engagementArn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo",
            "engagementId": "eng-567a1j5hxp35lo",
            "LastModifiedAt": "2023-04-18T18:20:15Z",
            "LastModifiedBy": "aws",
            "ContextTypes": ["Lead", "CustomerProject"]
        }
    }
}
```