

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

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

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

パートナーアカウント接続通知を使用すると、パートナーはビジネス関係と運用ワークフローに直接影響する接続ライフサイクルイベントについて最新情報を得ることができます。これらのイベントは、パートナーが以下を行う上で重要です。
+ 新しいコラボレーションに迅速に対応
+ 接続ポートフォリオのステータスの認識を維持する
+ 接続が確立または終了したときに適切なアクションを実行する
+ 関係が変わるタイミングを把握してビジネス継続性を確保する

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

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

ユーザーには、アカウント接続 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`、特定のイベントタイプにアクセス許可の範囲を設定するために使用できます。

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

IAM ポリシーの詳細な例については、EventBridge アクセス許可に関する AWS ドキュメントを参照してください。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowPutRuleForPartnerCentralAccountEvents",
      "Effect": "Allow",
      "Action": "events:PutRule",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "events:source": "aws.partnercentral-account.connection"
        }
      }
    }
  ]
}
```

## イベントをモニタリングするように 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-account"],
    "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='MyConnectionInvitationReceivedRule',
    EventPattern=
    '{
        "source": ["aws.partnercentral-account"], 
        "detail-type": ["Partner Connection Invitation Received"], 
        "detail": {"catalog": ["AWS"]}
    }',
    State='ENABLED'
)
print('Rule ARN:', response['RuleArn'])
```

## アカウント接続 API イベントの詳細
<a name="learn-about-events"></a>

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

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

以下は、イベントタイプとそのトリガーです。
+ [パートナー接続招待の受信](#connection-invitation-received): 別のパートナーが接続を確立することを受信者に通知します。
+ [パートナー接続招待の承諾](#connection-invitation-accepted): 招待が承諾され、接続がアクティブになったことを送信者に通知します
+ [パートナー接続の招待が拒否されました](#connection-invitation-rejected): 招待が拒否されたことを送信者に通知します
+ [パートナー接続のキャンセル](#connection-cancelled): アクティブな接続が終了したときに、接続された他の参加者に通知します。
+ [パートナー接続招待のキャンセル](#connection-invitation-cancelled): アクションが実行される前に送信者が招待を取り消したことを受信者に通知します。
+ [パートナー接続招待の有効期限切れ: ](#connection-invitation-expired)招待の有効期限が切れたことを送信者と受信者の両方に通知します。

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

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

**Topics**
+ [パートナー接続の招待を受信しました](#connection-invitation-received)
+ [パートナー接続の招待が承諾されました](#connection-invitation-accepted)
+ [パートナー接続の招待が拒否されました](#connection-invitation-rejected)
+ [パートナー接続がキャンセルされました](#connection-cancelled)
+ [パートナー接続の招待がキャンセルされました](#connection-invitation-cancelled)
+ [パートナー接続の招待の有効期限が切れました](#connection-invitation-expired)

#### パートナー接続の招待を受信しました
<a name="connection-invitation-received"></a>

##### トリガーコンテキスト
<a name="connection-invitation-received-context"></a>

このイベントは、接続招待が正常に作成され、CreateConnectionInvitation API を介して PAC のデータストアに保持されると生成されます。イベントは、招待の作成が正常に完了した直後に送信され、API コールが行われたときだけでなく、PAC のデータストアに保持されます。

新しい接続招待が作成されると、イベントが自動的に送信されます。同じ招待に対して重複するイベントなしで作成された招待ごとに 1 つのイベント。

##### 受取人
<a name="connection-invitation-received-recipients"></a>

接続招待の受信者のAWSアカウント。

##### 予想される処理
<a name="connection-invitation-received-handling"></a>

一般的なお客様のアクション:
+ 即時通知: 新しいパートナーシップの機会についてビジネスチームにアラートをトリガーする
+ ワークフロー自動化: 保留中の招待でパートナー管理システムを自動的に更新する
+ 決定サポート: 接続タイプに基づいて適切な意思決定者に招待をルーティングする
+ 監査ログ記録: コンプライアンスとパートナーシップの追跡のための招待受信を記録する
+ レスポンスの自動化: 信頼できるパートナーの場合、特定の招待タイプを自動承認する可能性があります

一般的な統合パターン:
+ Lambda 関数 → パートナーポータルダッシュボードを更新する
+ SQS キュー → レビューのためのバッチ処理の招待
+ SNS トピック → ビジネスチームへの E メール/Slack 通知
+ API 送信先 → 外部 CRM/パートナー管理システムへのウェブフック

##### 例
<a name="connection-invitation-received-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type": "Partner Connection Invitation Received",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "account": "<corresponding partner AWS account>",
  "resources": [ "<<Connection Invitation ARN>>" ],
  "detail": {
    "catalog": "AWS",
    "connectionInvitation" :{
        "arn": "<<Connection Invitation ARN>>",
        "id": "pacinv-****",
        "connectionType": "OpportunityCollaboration",
        "inviterEmail": "abc@def.com",
        "invitationMessage": "We'd like to collaborate on a joint solution for cloud security. Please accept this connection invitation to proceed.",
        "senderCompanyName": "<<Sender Partner Account Name>>",
        "senderProfileId": "pprofile-****",
        "expiresAt": "<ISO 8601 date time>"
    }
  }
}
```

#### パートナー接続の招待が承諾されました
<a name="connection-invitation-accepted"></a>

##### トリガーコンテキスト
<a name="connection-invitation-accepted-context"></a>

このイベントは、接続の招待が正常に受け入れられ、接続が作成され、AcceptConnectionInvitation API を介して PAC のデータストアに保持されると生成されます。イベントは、招待の承諾が正常に完了し、接続が確立されるとすぐに送信されます。

接続の招待が承諾されると、イベントが自動的に送信されます。招待ごとに 1 つのイベントが受け入れられ、同じ承認に対して重複するイベントはありません。

##### 受取人
<a name="connection-invitation-accepted-recipients"></a>

接続の招待に関係する両方のAWSアカウント: 招待を最初に送信した送信者アカウントと、招待を承諾した受信者アカウント。

##### 予想される処理
<a name="connection-invitation-accepted-handling"></a>

一般的なお客様のアクション:
+ パートナーシップのアクティベーション: ワークフローをトリガーしてレイヤー 2 ビジネスアクティビティを有効にする
+ ステータスの更新: アクティブな接続ステータスでパートナー管理システムを更新する
+ 通知: パートナーシップの確立が成功したことをビジネスチームに警告する
+ アクセスプロビジョニング: コラボレーションに適切なアクセス許可を自動的に付与する
+ 分析: パートナーシップの変換率と成功メトリクスを追跡する

一般的な統合パターン:
+ Lambda 関数 → データ共有アクセス許可を有効にし、パートナーポータルを更新する
+ SQS キュー → ビジネスセットアップ用のバッチプロセス接続のアクティベーション
+ SNS トピック → ビジネスチームと技術チームへの E メール/Slack 通知
+ API 送信先 → CRM システムへのウェブフックでパートナーシップのステータスを更新する

##### 例
<a name="connection-invitation-accepted-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type":  "Partner Connection Invitation Accepted",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "resources": [ "<<Connection Invitation ARN>>" , "<<Connection ARN>>" ],
  "account": "<corresponding partner AWS account>",
  "detail": {
    "catalog": "AWS",
    "connectionInvitation" :{
        "arn": "<<Connection Invitation ARN>>",
        "id": "pacinv-****",
        "connectionType": "OpportunityCollaboration"
    },
    "connection": {
        "arn": "<<Connection ARN>>",
         "id": "pac-*****",
         "Participant1AccountId": "<<Sender AWS AccountId>>", 
         "Participant2AccountId": "<<Receiver AWS AccountId>>",
         "status": "ACTIVE"
     }
  }
}
```

#### パートナー接続の招待が拒否されました
<a name="connection-invitation-rejected"></a>

##### トリガーコンテキスト
<a name="connection-invitation-rejected-context"></a>

このイベントは、接続の招待が RejectConnectionInvitation API を介して正常に拒否されたときに生成されます。イベントは、招待拒否が処理され、PAC のデータストアに保持された直後に送信されます。

接続の招待が拒否されると、イベントが自動的に送信されます。招待ごとに 1 つのイベントが拒否され、同じ拒否に対して重複するイベントはありません。

##### 受取人
<a name="connection-invitation-rejected-recipients"></a>

接続の招待を最初に送信したAWSアカウント (送信者アカウント）。

##### 予想される処理
<a name="connection-invitation-rejected-handling"></a>

一般的なお客様のアクション:
+ ステータスの更新: パートナー管理システムを拒否ステータスで更新する
+ フォローアップアクション: 代替パートナーシップアプローチのワークフローをトリガーする
+ 通知: パートナーシップの決定についてビジネスチームに警告する
+ クリーンアップ: 内部システムから保留中の招待参照を削除する

一般的な統合パターン:
+ Lambda 関数 → パートナーポータルを更新し、フォローアップワークフローをトリガーする
+ SQS キュー → ビジネス分析のバッチプロセス拒否
+ SNS トピック → ビジネス開発チームへの E メール/Slack 通知
+ API 送信先 → CRM システムへのウェブフックでオポチュニティステータスを更新する

##### 例
<a name="connection-invitation-rejected-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type": "Partner Connection Invitation Rejected",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "account": "<corresponding partner AWS account>",
  "resources": [ "<<Connection Invitation ARN>>" ],
  "detail": {
    "catalog": "AWS",
    "connectionInvitation" :{
        "arn": "<<Connection Invitation ARN>>",
        "id": "pacinv-****",
        "connectionType": "OpportunityCollaboration",
        "invitationMessage": "We'd like to collaborate on a joint solution for cloud security. Please accept this connection invitation to proceed.",
        "receiverProfileId": "pprofile-****"
    }
  }
}
```

#### パートナー接続がキャンセルされました
<a name="connection-cancelled"></a>

##### トリガーコンテキスト
<a name="connection-cancelled-context"></a>

このイベントは、アクティブな接続が正常にキャンセルされ、アクティブなステータスが CancelConnection API を介して PAC のデータストアで終了するように更新されると生成されます。イベントは、接続のキャンセルが処理され、接続ステータスが更新された直後に送信されます。

接続が終了すると、イベントが自動的に送信されます。接続ごとに 1 つのイベントがキャンセルされ、同じキャンセルに対して重複するイベントはありません。

##### 受取人
<a name="connection-cancelled-recipients"></a>

接続内の他の参加者のAWSアカウント (キャンセルを開始した参加者ではありません）。

##### 予想される処理
<a name="connection-cancelled-handling"></a>

一般的なお客様のアクション:
+ アクセス失効: アクセス許可を直ちに取り消し、データ共有を無効にする
+ ステータスの更新: パートナー管理システムを終了した接続ステータスで更新する
+ 通知: パートナーシップの終了についてビジネスチームと技術チームに警告する
+ クリーンアップ: 接続リファレンスを削除し、共有リソースをクリーンアップする
+ 分析: 接続時間と終了パターンを追跡する

一般的な統合パターン:
+ Lambda 関数 → アクセス許可を取り消し、パートナーポータルのステータスを更新する
+ SQS キュー → クリーンアップワークフローのバッチプロセス接続の終了
+ SNS トピック → ビジネスチームと技術チームへの E メール/Slack 通知
+ API 送信先 → CRM システムへのウェブフックでパートナーシップのステータスを更新する

##### 例
<a name="connection-cancelled-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type": "Partner Connection Cancelled",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "resources": [ "<<Connection ARN>>" ],
  "account": "<corresponding partner AWS account>",
  "detail": {
    "catalog": "AWS",
    "connection" :{
        "arn": "<<Connection Invitation ARN>>",
        "id": "pac-****",
        "connectionType": "OpportunityCollaboration",
        "canceledBy": "<<AWS account ID>>"
    }
  }
}
```

#### パートナー接続の招待がキャンセルされました
<a name="connection-invitation-cancelled"></a>

##### トリガーコンテキスト
<a name="connection-invitation-cancelled-context"></a>

このイベントは、保留中の接続招待が CancelConnectionInvitation API を介して正常にキャンセルされたときに生成されます。イベントは、招待のキャンセルが処理され、招待ステータスが CANCELED に更新された直後に送信されます。

接続の招待がキャンセルされると、イベントが自動的に送信されます。接続の招待ごとに 1 つのイベントがキャンセルされ、同じキャンセルに対して重複するイベントはありません。

##### 受取人
<a name="connection-invitation-cancelled-recipients"></a>

接続の招待を受け取るはずのAWSアカウント (受信者アカウント）。

##### 予想される処理
<a name="connection-invitation-cancelled-handling"></a>

一般的なお客様のアクション:
+ ステータスの更新: パートナー管理システムを更新して保留中の招待リファレンスを削除する
+ 通知: 潜在的なパートナーシップの機会が取り消されたことをビジネスチームに警告する
+ クリーンアップ: 内部追跡システムから招待リファレンスを削除する
+ 分析: パートナーシップインサイトの招待キャンセルパターンを追跡する

一般的な統合パターン:
+ Lambda 関数 → パートナーポータルを更新し、保留中の招待通知を削除する
+ SQS キュー → ビジネス分析のためのバッチプロセスのキャンセル
+ SNS トピック → ビジネス開発チームへの E メール/Slack 通知
+ API 送信先 → CRM システムへのウェブフックでオポチュニティステータスを更新する

##### 例
<a name="connection-invitation-cancelled-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type": "Partner Connection Invitation Cancelled",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "account": "<corresponding partner AWS account>",
  "resources": [ "<<Connection Invitation ARN>>" ],
  "detail": {
    "catalog": "AWS",
    "connectionInvitation" :{
        "arn": "<<Connection Invitation ARN>>",
        "id": "pacinv-****",
        "connectionType": "OpportunityCollaboration",
        "invitationMessage": "We'd like to collaborate on a joint solution for cloud security. Please accept this connection invitation to proceed.",
        "senderProfileId": "pprofile-****"
    }
  }
}
```

#### パートナー接続の招待の有効期限が切れました
<a name="connection-invitation-expired"></a>

##### トリガーコンテキスト
<a name="connection-invitation-expired-context"></a>

このイベントは、受信者によって承諾または拒否されずに ExpiresAt タイムスタンプに達した後、保留中の接続招待が自動的に期限切れになると生成されます。招待の有効期限に達すると、イベントは自動的にシステムによってトリガーされます。

接続の招待の有効期限が切れると、イベントが自動的に送信されます。招待ごとに 1 つのイベントが期限切れになり、同じ有効期限の重複イベントはありません。

##### 受取人
<a name="connection-invitation-expired-recipients"></a>

接続の招待に関係する両方のAWSアカウント: 招待を最初に送信した送信者アカウントと、招待を受信した受信者アカウント。

##### 予想される処理
<a name="connection-invitation-expired-handling"></a>

一般的なお客様のアクション:
+ ステータスの更新: パートナー管理システムを更新して招待を期限切れとしてマークする
+ フォローアップアクション: 再エンゲージメントまたは代替パートナーシップアプローチのワークフローをトリガーする
+ 通知: 欠落したパートナーシップの機会についてビジネスチームに警告する
+ クリーンアップ: 内部追跡システムから期限切れの招待参照を削除する

一般的な統合パターン:
+ Lambda 関数 → パートナーポータルを更新し、フォローアップワークフローをトリガーする
+ SQS キュー → ビジネス分析のバッチプロセスの有効期限
+ SNS トピック → ビジネス開発チームへの E メール/Slack 通知
+ API 送信先 → CRM システムへのウェブフックでオポチュニティステータスを更新する

##### 例
<a name="connection-invitation-expired-example"></a>

```
{
  "version": "1",
  "id": "<event id>",
  "detail-type": "Partner Connection Invitation Expired",
  "source": "aws.partnercentral-account",
  "time": "<ISO 8601 date time>",
  "region": "us-east-1",
  "resources": [ "<<Connection Invitation ARN>>" ],
  "detail": {
    "catalog": "AWS",
    "connectionInvitation": {
        "arn": "<<Connection Invitation ARN>>",
        "id": "pacinv-****",
        "connectionType": "OpportunityCollaboration",
        "inviterEmail": "abc@def.com",
        "invitationMessage": "We'd like to collaborate on a joint solution for cloud security. Please accept this connection invitation to proceed.",
        "senderProfileId": "pprofile-****",
        "receiverProfileId": "pprofile-****"
    }
  }
}
```