View a markdown version of this page

AWS Partner Central Channel API 的通知 - AWS Partner Central

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

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

AWS Partner Central Channel API 的通知

頻道 API 的事件提供有關頻道相關活動狀態變更或詳細資訊的即時通知。這些事件有助於讓您的系統與AWS Partner Central 保持同步,並有助於確保及時回應和更新。

先決條件

您需要適當的 IAM 許可,才能從AWS Partner Central Channel API 存取和管理事件。如需 EventBridge 可用動作、資源和條件索引鍵的相關資訊,請參閱《Amazon EventBridge 使用者指南》中的在 Amazon EventBridge 中使用 IAM 政策條件 EventBridge 其中一個條件索引鍵是 events:detail-type,您可以使用它來限制特定事件類型的許可範圍。

下列範例政策示範如何自訂事件的許可和範圍。AllowPutRuleForPartnercentralChannelEvents 陳述式允許建立規則,但僅適用於來源的事件aws.partnercentral-channel

如需詳細的 IAM 政策範例,請參閱 EventBridge 許可上的 AWS 文件。

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

設定 Amazon EventBridge 以監控事件

若要監控頻道 API 事件,您可以建立符合您要擷取之事件的 EventBridge 規則。您可以使用AWS 管理主控台或AWS SDKs來建立和管理規則。以下各節說明如何使用兩種方法建立規則。無論您使用何種方法,都必須在美國東部 (維吉尼亞北部) us-east-1區域中建立規則。

AWS 管理主控台設定

若要使用 設定 EventBridge 規則AWS 管理主控台,請遵循《Amazon EventBridge 使用者指南》中的建立對 Amazon EventBridge 中的事件做出反應的規則中的步驟。 EventBridge 建立規則時,您必須將事件匯流排設定為預設值,並在美國東部 (維吉尼亞北部) us-east-1區域中建立規則。

以下是事件規則的範例:

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

AWS開發套件設定

您可以使用AWS SDKs以程式設計方式建立和管理 EventBridge 規則。如需詳細資訊,請參閱《Amazon EventBridge API 參考》中的 PutRule

下列範例使用適用於 Python 的AWS SDK (Boto3):

import boto3 client = boto3.client('events', region_name='us-east-1') response = client.put_rule( Name='ChannelHandshakeCreatedRule', EventPattern= '{ "source": ["aws.partnercentral-channel"], "detail-type": ["Channel Handshake Created"], "detail": {"catalog": ["AWS"]} }', State='ENABLED' ) print('Rule ARN:', response['RuleArn'])

進一步了解頻道 API 事件

下列各節說明頻道 API 事件類型、觸發它們的案例,以及事件範例。

Event types (事件類型)

以下是事件類型及其觸發條件。

頻道交握已建立

下列範例顯示適用於不同交握類型的典型頻道交握建立事件。

啟動服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Created", "source": "aws.partnercentral-channel", "account": "789789789789", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-abc123def456g" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "START_SERVICE_PERIOD", "id": "ch-abc123def456g", "receiverAccountId": "789789789789", "ownerAccountId": "123123123123", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "startServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

撤銷服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Created", "source": "aws.partnercentral-channel", "account": "789789789789", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-def456ghi789j" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "REVOKE_SERVICE_PERIOD", "id": "ch-def456ghi789j", "ownerAccountId": "123123123123", "receiverAccountId": "789789789789", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "revokeServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

程式管理帳戶交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Created", "source": "aws.partnercentral-channel", "account": "456456456456", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-ghi789jkl012m" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "pma-abc123def456g", "handshakeType": "PROGRAM_MANAGEMENT_ACCOUNT", "id": "ch-ghi789jkl012m", "ownerAccountId": "123123123123", "receiverAccountId": "456456456456", "senderAccountId": "123123123123", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "programManagementAccountHandshakeDetail": { "program": "SOLUTION_PROVIDER" } } } }

頻道交握已接受

下列範例顯示不同交握類型的典型頻道交握接受事件。

啟動服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Accepted", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-abc123def456g" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "START_SERVICE_PERIOD", "id": "ch-abc123def456g", "ownerAccountId": "123123123123", "receiverAccountId": "789789789789", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "startServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

撤銷服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Accepted", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-def456ghi789j" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "REVOKE_SERVICE_PERIOD", "id": "ch-def456ghi789j", "ownerAccountId": "123123123123", "receiverAccountId": "789789789789", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "revokeServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

程式管理帳戶交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Accepted", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-ghi789jkl012m" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "pma-abc123def456g", "handshakeType": "PROGRAM_MANAGEMENT_ACCOUNT", "id": "ch-ghi789jkl012m", "ownerAccountId": "123123123123", "receiverAccountId": "456456456456", "senderAccountId": "123123123123", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "programManagementAccountHandshakeDetail": { "program": "SOLUTION_PROVIDER" } } } }

頻道交握遭拒

下列範例顯示不同交握類型的典型頻道交握遭拒事件。

啟動服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Rejected", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-abc123def456g" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "START_SERVICE_PERIOD", "id": "ch-abc123def456g", "ownerAccountId": "123123123123", "receiverAccountId": "789789789789", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "startServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

撤銷服務期間交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Rejected", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-def456ghi789j" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "rs-jkl012mno345p", "handshakeType": "REVOKE_SERVICE_PERIOD", "id": "ch-def456ghi789j", "ownerAccountId": "123123123123", "receiverAccountId": "789789789789", "senderAccountId": "456456456456", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "revokeServicePeriodHandshakeDetail": { "servicePeriodType": "MINIMUM_NOTICE_PERIOD", "minimumNoticeDays": "14", "endDate": null, "startDate": "2025-02-02T00:00:00Z", "note": "Test note example" } } } }

程式管理帳戶交握:

{ "version": "0", "id": "01234567-0123-0123-0123-0123456789ab", "detail-type": "Channel Handshake Rejected", "source": "aws.partnercentral-channel", "account": "123123123123", "time": "2025-02-01T00:00:00Z", "region": "us-east-1", "resources": [ "arn:aws:partnercentral:us-east-1:123123123123:catalog/AWS/channel-handshake/ch-ghi789jkl012m" ], "detail": { "requestId": "12345678-1234-1234-1234-123456789abc", "catalog": "AWS", "associatedResourceIdentifier": "pma-abc123def456g", "handshakeType": "PROGRAM_MANAGEMENT_ACCOUNT", "id": "ch-ghi789jkl012m", "ownerAccountId": "123123123123", "receiverAccountId": "456456456456", "senderAccountId": "123123123123", "senderDisplayName": "TestDisplayName", "handshakeDetail": { "programManagementAccountHandshakeDetail": { "program": "SOLUTION_PROVIDER" } } } }