Partner Central Channel API 2024-03-18
- Client: Aws\PartnerCentralChannel\PartnerCentralChannelClient
- Service ID: partnercentral-channel
- Version: 2024-03-18
This page describes the parameters and results for the operations of the Partner Central Channel API (2024-03-18), and shows how to use the Aws\PartnerCentralChannel\PartnerCentralChannelClient object to call the described operations. This documentation is specific to the 2024-03-18 API version of the service.
Operation Summary
Each of the following operations can be created from a client using
$client->getCommand('CommandName'), where "CommandName" is the
name of one of the following operations. Note: a command is a value that
encapsulates an operation and the parameters used to create an HTTP request.
You can also create and send a command immediately using the magic methods
available on a client object: $client->commandName(/* parameters */).
You can send the command asynchronously (returning a promise) by appending the
word "Async" to the operation name: $client->commandNameAsync(/* parameters */).
- AcceptChannelHandshake ( array $params = [] )
- Accepts a pending channel handshake request from another AWS account.
- CancelChannelHandshake ( array $params = [] )
- Cancels a pending channel handshake request.
- CreateChannelHandshake ( array $params = [] )
- Creates a new channel handshake request to establish a partnership with another AWS account.
- CreateProgramManagementAccount ( array $params = [] )
- Creates a new program management account for managing partner relationships.
- CreateRelationship ( array $params = [] )
- Creates a new partner relationship between accounts.
- DeleteProgramManagementAccount ( array $params = [] )
- Deletes a program management account.
- DeleteRelationship ( array $params = [] )
- Deletes a partner relationship.
- GetRelationship ( array $params = [] )
- Retrieves details of a specific partner relationship.
- ListChannelHandshakes ( array $params = [] )
- Lists channel handshakes based on specified criteria.
- ListProgramManagementAccounts ( array $params = [] )
- Lists program management accounts based on specified criteria.
- ListRelationships ( array $params = [] )
- Lists partner relationships based on specified criteria.
- ListTagsForResource ( array $params = [] )
- Lists tags associated with a specific resource.
- RejectChannelHandshake ( array $params = [] )
- Rejects a pending channel handshake request.
- TagResource ( array $params = [] )
- Adds or updates tags for a specified resource.
- UntagResource ( array $params = [] )
- Removes tags from a specified resource.
- UpdateProgramManagementAccount ( array $params = [] )
- Updates the properties of a program management account.
- UpdateRelationship ( array $params = [] )
- Updates the properties of a partner relationship.
Paginators
Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:
Operations
AcceptChannelHandshake
$result = $client->acceptChannelHandshake([/* ... */]); $promise = $client->acceptChannelHandshakeAsync([/* ... */]);
Accepts a pending channel handshake request from another AWS account.
Parameter Syntax
$result = $client->acceptChannelHandshake([
'catalog' => '<string>', // REQUIRED
'identifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the handshake request.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the channel handshake to accept.
Result Syntax
[
'channelHandshakeDetail' => [
'arn' => '<string>',
'id' => '<string>',
'status' => 'PENDING|ACCEPTED|REJECTED|CANCELED|EXPIRED',
],
]
Result Details
Members
- channelHandshakeDetail
-
- Type: AcceptChannelHandshakeDetail structure
Details of the accepted channel handshake.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for AcceptChannelHandshake
$result = $client->acceptChannelHandshake([
'catalog' => 'AWS',
'identifier' => 'ch-4fj3bd2o3vb91',
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
'status' => 'ACCEPTED',
],
]
CancelChannelHandshake
$result = $client->cancelChannelHandshake([/* ... */]); $promise = $client->cancelChannelHandshakeAsync([/* ... */]);
Cancels a pending channel handshake request.
Parameter Syntax
$result = $client->cancelChannelHandshake([
'catalog' => '<string>', // REQUIRED
'identifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the handshake request.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the channel handshake to cancel.
Result Syntax
[
'channelHandshakeDetail' => [
'arn' => '<string>',
'id' => '<string>',
'status' => 'PENDING|ACCEPTED|REJECTED|CANCELED|EXPIRED',
],
]
Result Details
Members
- channelHandshakeDetail
-
- Type: CancelChannelHandshakeDetail structure
Details of the canceled channel handshake.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for CancelChannelHandshake
$result = $client->cancelChannelHandshake([
'catalog' => 'AWS',
'identifier' => 'ch-4fj3bd2o3vb91',
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
'status' => 'CANCELED',
],
]
CreateChannelHandshake
$result = $client->createChannelHandshake([/* ... */]); $promise = $client->createChannelHandshakeAsync([/* ... */]);
Creates a new channel handshake request to establish a partnership with another AWS account.
Parameter Syntax
$result = $client->createChannelHandshake([
'associatedResourceIdentifier' => '<string>', // REQUIRED
'catalog' => '<string>', // REQUIRED
'clientToken' => '<string>',
'handshakeType' => 'START_SERVICE_PERIOD|REVOKE_SERVICE_PERIOD|PROGRAM_MANAGEMENT_ACCOUNT', // REQUIRED
'payload' => [
'revokeServicePeriodPayload' => [
'note' => '<string>',
'programManagementAccountIdentifier' => '<string>', // REQUIRED
],
'startServicePeriodPayload' => [
'endDate' => <integer || string || DateTime>,
'minimumNoticeDays' => '<string>',
'note' => '<string>',
'programManagementAccountIdentifier' => '<string>', // REQUIRED
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD|FIXED_COMMITMENT_PERIOD', // REQUIRED
],
],
'tags' => [
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- associatedResourceIdentifier
-
- Required: Yes
- Type: string
The identifier of the resource associated with this handshake.
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the handshake request.
- clientToken
-
- Type: string
A unique, case-sensitive identifier to ensure idempotency of the request.
- handshakeType
-
- Required: Yes
- Type: string
The type of handshake to create (e.g., start service period, revoke service period).
- payload
-
- Type: ChannelHandshakePayload structure
The payload containing specific details for the handshake type.
- tags
-
- Type: Array of Tag structures
Key-value pairs to associate with the channel handshake.
Result Syntax
[
'channelHandshakeDetail' => [
'arn' => '<string>',
'id' => '<string>',
],
]
Result Details
Members
- channelHandshakeDetail
-
- Type: CreateChannelHandshakeDetail structure
Details of the created channel handshake.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
- ServiceQuotaExceededException:
The request would exceed a service quota limit.
Examples
Example 1: Example for CreateChannelHandshake - START_SERVICE_PERIOD with Minimum Notice Period
$result = $client->createChannelHandshake([
'associatedResourceIdentifier' => 'rs-abc123def456g',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'handshakeType' => 'START_SERVICE_PERIOD',
'payload' => [
'startServicePeriodPayload' => [
'minimumNoticeDays' => '14',
'note' => 'Optional Note',
'programManagementAccountIdentifier' => 'pma-abcdef123456g',
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD',
],
],
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
],
]
Example 2: Example for CreateChannelHandshake - START_SERVICE_PERIOD with Fixed Commitment Period
$result = $client->createChannelHandshake([
'associatedResourceIdentifier' => 'rs-abc123def456g',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'handshakeType' => 'START_SERVICE_PERIOD',
'payload' => [
'startServicePeriodPayload' => [
'endDate' => ,
'note' => 'Optional Note',
'programManagementAccountIdentifier' => 'pma-abcdef123456g',
'servicePeriodType' => 'FIXED_COMMITMENT_PERIOD',
],
],
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
],
]
Example 3: Example for CreateChannelHandshake - REVOKE_SERVICE_PERIOD
$result = $client->createChannelHandshake([
'associatedResourceIdentifier' => 'rs-abc123def456g',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'handshakeType' => 'REVOKE_SERVICE_PERIOD',
'payload' => [
'revokeServicePeriodPayload' => [
'note' => 'Optional Note',
'programManagementAccountIdentifier' => 'pma-abcdef123456g',
],
],
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
],
]
Example 4: Example for CreateChannelHandshake - PROGRAM_MANAGEMENT_ACCOUNT
$result = $client->createChannelHandshake([
'associatedResourceIdentifier' => 'pma-123abc456def7',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'handshakeType' => 'PROGRAM_MANAGEMENT_ACCOUNT',
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
],
]
CreateProgramManagementAccount
$result = $client->createProgramManagementAccount([/* ... */]); $promise = $client->createProgramManagementAccountAsync([/* ... */]);
Creates a new program management account for managing partner relationships.
Parameter Syntax
$result = $client->createProgramManagementAccount([
'accountId' => '<string>', // REQUIRED
'catalog' => '<string>', // REQUIRED
'clientToken' => '<string>',
'displayName' => '<string>', // REQUIRED
'program' => 'SOLUTION_PROVIDER|DISTRIBUTION|DISTRIBUTION_SELLER', // REQUIRED
'tags' => [
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- accountId
-
- Required: Yes
- Type: string
The AWS account ID to associate with the program management account.
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the program management account.
- clientToken
-
- Type: string
A unique, case-sensitive identifier to ensure idempotency of the request.
- displayName
-
- Required: Yes
- Type: string
A human-readable name for the program management account.
- program
-
- Required: Yes
- Type: string
The program type for the management account.
- tags
-
- Type: Array of Tag structures
Key-value pairs to associate with the program management account.
Result Syntax
[
'programManagementAccountDetail' => [
'arn' => '<string>',
'id' => '<string>',
],
]
Result Details
Members
- programManagementAccountDetail
-
- Type: CreateProgramManagementAccountDetail structure
Details of the created program management account.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
- ServiceQuotaExceededException:
The request would exceed a service quota limit.
Examples
Example 1: Example for CreateProgramManagementAccount
$result = $client->createProgramManagementAccount([
'accountId' => '111122223333',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'displayName' => 'TestDisplayName',
'program' => 'SOLUTION_PROVIDER',
]);
Result syntax:
[
'programManagementAccountDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8',
'id' => 'pma-u8ic702rtzng8',
],
]
CreateRelationship
$result = $client->createRelationship([/* ... */]); $promise = $client->createRelationshipAsync([/* ... */]);
Creates a new partner relationship between accounts.
Parameter Syntax
$result = $client->createRelationship([
'associatedAccountId' => '<string>', // REQUIRED
'associationType' => 'DOWNSTREAM_SELLER|END_CUSTOMER|INTERNAL', // REQUIRED
'catalog' => '<string>', // REQUIRED
'clientToken' => '<string>',
'displayName' => '<string>', // REQUIRED
'programManagementAccountIdentifier' => '<string>', // REQUIRED
'requestedSupportPlan' => [
'partnerLedSupport' => [
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
'provider' => 'DISTRIBUTOR|DISTRIBUTION_SELLER',
'tamLocation' => '<string>', // REQUIRED
],
'resoldBusiness' => [
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
],
'resoldEnterprise' => [
'chargeAccountId' => '<string>',
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
'tamLocation' => '<string>', // REQUIRED
],
],
'resaleAccountModel' => 'DISTRIBUTOR|END_CUSTOMER|SOLUTION_PROVIDER',
'sector' => 'COMMERCIAL|GOVERNMENT|GOVERNMENT_EXCEPTION', // REQUIRED
'tags' => [
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- associatedAccountId
-
- Required: Yes
- Type: string
The AWS account ID to associate in this relationship.
- associationType
-
- Required: Yes
- Type: string
The type of association for the relationship (e.g., reseller, distributor).
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the relationship.
- clientToken
-
- Type: string
A unique, case-sensitive identifier to ensure idempotency of the request.
- displayName
-
- Required: Yes
- Type: string
A human-readable name for the relationship.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account for this relationship.
- requestedSupportPlan
-
- Type: SupportPlan structure
The support plan requested for this relationship.
- resaleAccountModel
-
- Type: string
The resale account model for the relationship.
- sector
-
- Required: Yes
- Type: string
The business sector for the relationship.
- tags
-
- Type: Array of Tag structures
Key-value pairs to associate with the relationship.
Result Syntax
[
'relationshipDetail' => [
'arn' => '<string>',
'id' => '<string>',
],
]
Result Details
Members
- relationshipDetail
-
- Type: CreateRelationshipDetail structure
Details of the created relationship.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
- ServiceQuotaExceededException:
The request would exceed a service quota limit.
Examples
Example 1: Example for CreateRelationship
$result = $client->createRelationship([
'associatedAccountId' => '987654321012',
'associationType' => 'DOWNSTREAM_SELLER',
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'displayName' => 'TestDisplayName',
'programManagementAccountIdentifier' => 'pma-u8ic702rtzng8',
'resaleAccountModel' => 'END_CUSTOMER',
'sector' => 'COMMERCIAL',
]);
Result syntax:
[
'relationshipDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8/relationship/rs-l9o4fj3b5zb91',
'id' => 'rs-l9o4fj3b5zb91',
],
]
DeleteProgramManagementAccount
$result = $client->deleteProgramManagementAccount([/* ... */]); $promise = $client->deleteProgramManagementAccountAsync([/* ... */]);
Deletes a program management account.
Parameter Syntax
$result = $client->deleteProgramManagementAccount([
'catalog' => '<string>', // REQUIRED
'clientToken' => '<string>',
'identifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the program management account.
- clientToken
-
- Type: string
A unique, case-sensitive identifier to ensure idempotency of the request.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the program management account to delete.
Result Syntax
[]
Result Details
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for DeleteProgramManagementAccount
$result = $client->deleteProgramManagementAccount([
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'identifier' => 'pma-u8ic702rtzng8',
]);
Result syntax:
[ ]
DeleteRelationship
$result = $client->deleteRelationship([/* ... */]); $promise = $client->deleteRelationshipAsync([/* ... */]);
Deletes a partner relationship.
Parameter Syntax
$result = $client->deleteRelationship([
'catalog' => '<string>', // REQUIRED
'clientToken' => '<string>',
'identifier' => '<string>', // REQUIRED
'programManagementAccountIdentifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the relationship.
- clientToken
-
- Type: string
A unique, case-sensitive identifier to ensure idempotency of the request.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the relationship to delete.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account associated with the relationship.
Result Syntax
[]
Result Details
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for DeleteRelationship
$result = $client->deleteRelationship([
'catalog' => 'AWS',
'clientToken' => 'clientToken',
'identifier' => 'rs-l9o4fj3b5zb91',
'programManagementAccountIdentifier' => 'pma-u8ic702rtzng8',
]);
Result syntax:
[ ]
GetRelationship
$result = $client->getRelationship([/* ... */]); $promise = $client->getRelationshipAsync([/* ... */]);
Retrieves details of a specific partner relationship.
Parameter Syntax
$result = $client->getRelationship([
'catalog' => '<string>', // REQUIRED
'identifier' => '<string>', // REQUIRED
'programManagementAccountIdentifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the relationship.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the relationship to retrieve.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account associated with the relationship.
Result Syntax
[
'relationshipDetail' => [
'arn' => '<string>',
'associatedAccountId' => '<string>',
'associationType' => 'DOWNSTREAM_SELLER|END_CUSTOMER|INTERNAL',
'catalog' => '<string>',
'createdAt' => <DateTime>,
'displayName' => '<string>',
'id' => '<string>',
'programManagementAccountId' => '<string>',
'resaleAccountModel' => 'DISTRIBUTOR|END_CUSTOMER|SOLUTION_PROVIDER',
'revision' => '<string>',
'sector' => 'COMMERCIAL|GOVERNMENT|GOVERNMENT_EXCEPTION',
'startDate' => <DateTime>,
'updatedAt' => <DateTime>,
],
]
Result Details
Members
- relationshipDetail
-
- Type: RelationshipDetail structure
Details of the requested relationship.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for GetRelationship
$result = $client->getRelationship([
'catalog' => 'AWS',
'identifier' => 'rs-l9o4fj3b5zb91',
'programManagementAccountIdentifier' => 'pma-u8ic702rtzng8',
]);
Result syntax:
[
'relationshipDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8/relationship/rs-l9o4fj3b5zb91',
'associatedAccountId' => '987654321012',
'associationType' => 'DOWNSTREAM_SELLER',
'createdAt' => ,
'displayName' => 'TestDisplayName',
'id' => 'rs-l9o4fj3b5zb91',
'programManagementAccountId' => 'pma-u8ic702rtzng8',
'resaleAccountModel' => 'END_CUSTOMER',
'revision' => '3',
'sector' => 'COMMERCIAL',
'updatedAt' => ,
],
]
ListChannelHandshakes
$result = $client->listChannelHandshakes([/* ... */]); $promise = $client->listChannelHandshakesAsync([/* ... */]);
Lists channel handshakes based on specified criteria.
Parameter Syntax
$result = $client->listChannelHandshakes([
'associatedResourceIdentifiers' => ['<string>', ...],
'catalog' => '<string>', // REQUIRED
'handshakeType' => 'START_SERVICE_PERIOD|REVOKE_SERVICE_PERIOD|PROGRAM_MANAGEMENT_ACCOUNT', // REQUIRED
'handshakeTypeFilters' => [
'programManagementAccountTypeFilters' => [
'programs' => ['<string>', ...],
],
'revokeServicePeriodTypeFilters' => [
'servicePeriodTypes' => ['<string>', ...],
],
'startServicePeriodTypeFilters' => [
'servicePeriodTypes' => ['<string>', ...],
],
],
'handshakeTypeSort' => [
'programManagementAccountTypeSort' => [
'sortBy' => 'UpdatedAt', // REQUIRED
'sortOrder' => 'Ascending|Descending', // REQUIRED
],
'revokeServicePeriodTypeSort' => [
'sortBy' => 'UpdatedAt', // REQUIRED
'sortOrder' => 'Ascending|Descending', // REQUIRED
],
'startServicePeriodTypeSort' => [
'sortBy' => 'UpdatedAt', // REQUIRED
'sortOrder' => 'Ascending|Descending', // REQUIRED
],
],
'maxResults' => <integer>,
'nextToken' => '<string>',
'participantType' => 'SENDER|RECEIVER', // REQUIRED
'statuses' => ['<string>', ...],
]);
Parameter Details
Members
- associatedResourceIdentifiers
-
- Type: Array of strings
Filter by associated resource identifiers.
- catalog
-
- Required: Yes
- Type: string
The catalog identifier to filter handshakes.
- handshakeType
-
- Required: Yes
- Type: string
Filter results by handshake type.
- handshakeTypeFilters
-
- Type: ListChannelHandshakesTypeFilters structure
Type-specific filters for handshakes.
- handshakeTypeSort
-
- Type: ListChannelHandshakesTypeSort structure
Type-specific sorting options for handshakes.
- maxResults
-
- Type: int
The maximum number of results to return in a single call.
- nextToken
-
- Type: string
Token for retrieving the next page of results.
- participantType
-
- Required: Yes
- Type: string
Filter by participant type (sender or receiver).
- statuses
-
- Type: Array of strings
Filter results by handshake status.
Result Syntax
[
'items' => [
[
'arn' => '<string>',
'associatedResourceId' => '<string>',
'catalog' => '<string>',
'createdAt' => <DateTime>,
'detail' => [
'programManagementAccountHandshakeDetail' => [
'program' => 'SOLUTION_PROVIDER|DISTRIBUTION|DISTRIBUTION_SELLER',
],
'revokeServicePeriodHandshakeDetail' => [
'endDate' => <DateTime>,
'minimumNoticeDays' => '<string>',
'note' => '<string>',
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD|FIXED_COMMITMENT_PERIOD',
'startDate' => <DateTime>,
],
'startServicePeriodHandshakeDetail' => [
'endDate' => <DateTime>,
'minimumNoticeDays' => '<string>',
'note' => '<string>',
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD|FIXED_COMMITMENT_PERIOD',
'startDate' => <DateTime>,
],
],
'handshakeType' => 'START_SERVICE_PERIOD|REVOKE_SERVICE_PERIOD|PROGRAM_MANAGEMENT_ACCOUNT',
'id' => '<string>',
'ownerAccountId' => '<string>',
'receiverAccountId' => '<string>',
'senderAccountId' => '<string>',
'senderDisplayName' => '<string>',
'status' => 'PENDING|ACCEPTED|REJECTED|CANCELED|EXPIRED',
'updatedAt' => <DateTime>,
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- items
-
- Type: Array of ChannelHandshakeSummary structures
List of channel handshakes matching the criteria.
- nextToken
-
- Type: string
Token for retrieving the next page of results, if available.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for ListChannelHandshakes - START_SERVICE_PERIOD
$result = $client->listChannelHandshakes([
'associatedResourceIdentifiers' => [
'rs-123abc456def7',
],
'catalog' => 'AWS',
'handshakeType' => 'START_SERVICE_PERIOD',
'handshakeTypeFilters' => [
'startServicePeriodTypeFilters' => [
'servicePeriodTypes' => [
'FIXED_COMMITMENT_PERIOD',
],
],
],
'handshakeTypeSort' => [
'startServicePeriodTypeSort' => [
'sortBy' => 'UpdatedAt',
'sortOrder' => 'Descending',
],
],
'participantType' => 'SENDER',
'statuses' => [
'ACCEPTED',
],
]);
Result syntax:
[
'items' => [
[
'arn' => 'arn:aws:partnercentral:us-east-1:111122223333:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'associatedResourceId' => 'rs-u8ic702rtfew1',
'catalog' => 'AWS',
'createdAt' => ,
'detail' => [
'startServicePeriodHandshakeDetail' => [
'minimumNoticeDays' => '14',
'note' => 'Optional_Note',
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD',
],
],
'handshakeType' => 'START_SERVICE_PERIOD',
'id' => 'ch-4fj3bd2o3vb91',
'ownerAccountId' => '111122223333',
'receiverAccountId' => '333322221111',
'senderAccountId' => '111122224444',
'status' => 'PENDING',
'updatedAt' => ,
],
[
'arn' => 'arn:aws:partnercentral:us-east-1:111122223333:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb92',
'associatedResourceId' => 'rs-u8ic702rtfew1',
'catalog' => 'AWS',
'createdAt' => ,
'detail' => [
'startServicePeriodHandshakeDetail' => [
'endDate' => ,
'note' => 'Optional_Note',
'servicePeriodType' => 'FIXED_COMMITMENT_PERIOD',
'startDate' => ,
],
],
'handshakeType' => 'START_SERVICE_PERIOD',
'id' => 'ch-4fj3bd2o3vb92',
'ownerAccountId' => '111122223333',
'receiverAccountId' => '333322221111',
'senderAccountId' => '111122224444',
'status' => 'PENDING',
'updatedAt' => ,
],
],
'nextToken' => 'nextToken',
]
Example 2: Example for ListChannelHandshakes - REVOKE_SERVICE_PERIOD
$result = $client->listChannelHandshakes([
'associatedResourceIdentifiers' => [
'rs-123abc456def7',
],
'catalog' => 'AWS',
'handshakeType' => 'REVOKE_SERVICE_PERIOD',
'handshakeTypeFilters' => [
'revokeServicePeriodTypeFilters' => [
'servicePeriodTypes' => [
'MINIMUM_NOTICE_PERIOD',
],
],
],
'handshakeTypeSort' => [
'revokeServicePeriodTypeSort' => [
'sortBy' => 'UpdatedAt',
'sortOrder' => 'Descending',
],
],
'participantType' => 'SENDER',
'statuses' => [
'ACCEPTED',
],
]);
Result syntax:
[
'items' => [
[
'arn' => 'arn:aws:partnercentral:us-east-1:111122223333:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'associatedResourceId' => 'rs-u8ic702rtfew1',
'catalog' => 'AWS',
'createdAt' => ,
'detail' => [
'revokeServicePeriodHandshakeDetail' => [
'minimumNoticeDays' => '14',
'note' => 'Optional_Note',
'servicePeriodType' => 'MINIMUM_NOTICE_PERIOD',
],
],
'handshakeType' => 'REVOKE_SERVICE_PERIOD',
'id' => 'ch-4fj3bd2o3vb91',
'ownerAccountId' => '111122223333',
'receiverAccountId' => '333322221111',
'senderAccountId' => '111122224444',
'status' => 'PENDING',
'updatedAt' => ,
],
],
'nextToken' => 'nextToken',
]
Example 3: Example for ListChannelHandshakes - PROGRAM_MANAGEMENT_ACCOUNT
$result = $client->listChannelHandshakes([
'associatedResourceIdentifiers' => [
'pma-123abc456def7',
],
'catalog' => 'AWS',
'handshakeType' => 'PROGRAM_MANAGEMENT_ACCOUNT',
'handshakeTypeFilters' => [
'programManagementAccountTypeFilters' => [
'programs' => [
'SOLUTION_PROVIDER',
],
],
],
'handshakeTypeSort' => [
'programManagementAccountTypeSort' => [
'sortBy' => 'UpdatedAt',
'sortOrder' => 'Descending',
],
],
'maxResults' => 20,
'nextToken' => 'nextToken',
'participantType' => 'SENDER',
'statuses' => [
'ACCEPTED',
],
]);
Result syntax:
[
'items' => [
[
'arn' => 'arn:aws:partnercentral:us-east-1:111122223333:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'associatedResourceId' => 'pma-u8ic702rtfew1',
'catalog' => 'AWS',
'createdAt' => ,
'detail' => [
'programManagementAccountHandshakeDetail' => [
'program' => 'SOLUTION_PROVIDER',
],
],
'handshakeType' => 'PROGRAM_MANAGEMENT_ACCOUNT',
'id' => 'ch-4fj3bd2o3vb91',
'ownerAccountId' => '111122223333',
'receiverAccountId' => '333322221111',
'senderAccountId' => '111122223333',
'status' => 'PENDING',
'updatedAt' => ,
],
],
'nextToken' => 'nextToken',
]
ListProgramManagementAccounts
$result = $client->listProgramManagementAccounts([/* ... */]); $promise = $client->listProgramManagementAccountsAsync([/* ... */]);
Lists program management accounts based on specified criteria.
Parameter Syntax
$result = $client->listProgramManagementAccounts([
'accountIds' => ['<string>', ...],
'catalog' => '<string>', // REQUIRED
'displayNames' => ['<string>', ...],
'maxResults' => <integer>,
'nextToken' => '<string>',
'programs' => ['<string>', ...],
'sort' => [
'sortBy' => 'UpdatedAt', // REQUIRED
'sortOrder' => 'Ascending|Descending', // REQUIRED
],
'statuses' => ['<string>', ...],
]);
Parameter Details
Members
- accountIds
-
- Type: Array of strings
Filter by AWS account IDs.
- catalog
-
- Required: Yes
- Type: string
The catalog identifier to filter accounts.
- displayNames
-
- Type: Array of strings
Filter by display names.
- maxResults
-
- Type: int
The maximum number of results to return in a single call.
- nextToken
-
- Type: string
Token for retrieving the next page of results.
- programs
-
- Type: Array of strings
Filter by program types.
- sort
-
- Type: ListProgramManagementAccountsSortBase structure
Sorting options for the results.
- statuses
-
- Type: Array of strings
Filter by program management account statuses.
Result Syntax
[
'items' => [
[
'accountId' => '<string>',
'arn' => '<string>',
'catalog' => '<string>',
'createdAt' => <DateTime>,
'displayName' => '<string>',
'id' => '<string>',
'program' => 'SOLUTION_PROVIDER|DISTRIBUTION|DISTRIBUTION_SELLER',
'revision' => '<string>',
'startDate' => <DateTime>,
'status' => 'PENDING|ACTIVE|INACTIVE',
'updatedAt' => <DateTime>,
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- items
-
- Type: Array of ProgramManagementAccountSummary structures
List of program management accounts matching the criteria.
- nextToken
-
- Type: string
Token for retrieving the next page of results, if available.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for ListProgramManagementAccounts
$result = $client->listProgramManagementAccounts([
'accountIds' => [
'111122223333',
],
'catalog' => 'AWS',
'displayNames' => [
'TestDisplayName',
],
'maxResults' => 20,
'programs' => [
'SOLUTION_PROVIDER',
],
'sort' => [
'sortBy' => 'UpdatedAt',
'sortOrder' => 'Descending',
],
'statuses' => [
'PENDING',
],
]);
Result syntax:
[
'items' => [
[
'accountId' => '111122223333',
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8',
'catalog' => 'AWS',
'createdAt' => ,
'displayName' => 'TestDisplayName',
'id' => 'pma-u8ic702rtzng8',
'program' => 'SOLUTION_PROVIDER',
'revision' => '4',
'status' => 'PENDING',
'updatedAt' => ,
],
],
'nextToken' => 'nextToken',
]
ListRelationships
$result = $client->listRelationships([/* ... */]); $promise = $client->listRelationshipsAsync([/* ... */]);
Lists partner relationships based on specified criteria.
Parameter Syntax
$result = $client->listRelationships([
'associatedAccountIds' => ['<string>', ...],
'associationTypes' => ['<string>', ...],
'catalog' => '<string>', // REQUIRED
'displayNames' => ['<string>', ...],
'maxResults' => <integer>,
'nextToken' => '<string>',
'programManagementAccountIdentifiers' => ['<string>', ...],
'sort' => [
'sortBy' => 'UpdatedAt', // REQUIRED
'sortOrder' => 'Ascending|Descending', // REQUIRED
],
]);
Parameter Details
Members
- associatedAccountIds
-
- Type: Array of strings
Filter by associated AWS account IDs.
- associationTypes
-
- Type: Array of strings
Filter by association types.
- catalog
-
- Required: Yes
- Type: string
The catalog identifier to filter relationships.
- displayNames
-
- Type: Array of strings
Filter by display names.
- maxResults
-
- Type: int
The maximum number of results to return in a single call.
- nextToken
-
- Type: string
Token for retrieving the next page of results.
- programManagementAccountIdentifiers
-
- Type: Array of strings
Filter by program management account identifiers.
- sort
-
- Type: ListRelationshipsSortBase structure
Sorting options for the results.
Result Syntax
[
'items' => [
[
'arn' => '<string>',
'associatedAccountId' => '<string>',
'associationType' => 'DOWNSTREAM_SELLER|END_CUSTOMER|INTERNAL',
'catalog' => '<string>',
'createdAt' => <DateTime>,
'displayName' => '<string>',
'id' => '<string>',
'programManagementAccountId' => '<string>',
'revision' => '<string>',
'sector' => 'COMMERCIAL|GOVERNMENT|GOVERNMENT_EXCEPTION',
'startDate' => <DateTime>,
'updatedAt' => <DateTime>,
],
// ...
],
'nextToken' => '<string>',
]
Result Details
Members
- items
-
- Type: Array of RelationshipSummary structures
List of relationships matching the criteria.
- nextToken
-
- Type: string
Token for retrieving the next page of results, if available.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for ListRelationships
$result = $client->listRelationships([
'associatedAccountIds' => [
'123456789012',
],
'associationTypes' => [
'DOWNSTREAM_SELLER',
],
'catalog' => 'AWS',
'displayNames' => [
'TestDisplayName',
],
'maxResults' => 100,
'nextToken' => 'nextToken',
'programManagementAccountIdentifiers' => [
'pma-u8ic702rtzng8',
],
'sort' => [
'sortBy' => 'UpdatedAt',
'sortOrder' => 'Descending',
],
]);
Result syntax:
[
'items' => [
[
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8/relationship/rs-l9o4fj3b5zb91',
'associatedAccountId' => '987654321012',
'associationType' => 'DOWNSTREAM_SELLER',
'createdAt' => ,
'displayName' => 'TestDisplayName',
'id' => 'rs-l9o4fj3b5zb91',
'programManagementAccountId' => 'pma-u8ic702rtzng8',
'revision' => '3',
'updatedAt' => ,
],
],
'nextToken' => 'nextToken',
]
ListTagsForResource
$result = $client->listTagsForResource([/* ... */]); $promise = $client->listTagsForResourceAsync([/* ... */]);
Lists tags associated with a specific resource.
Parameter Syntax
$result = $client->listTagsForResource([
'resourceArn' => '<string>', // REQUIRED
]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The Amazon Resource Name (ARN) of the resource to list tags for.
Result Syntax
[
'tags' => [
[
'key' => '<string>',
'value' => '<string>',
],
// ...
],
]
Result Details
Members
- tags
-
- Type: Array of Tag structures
Key-value pairs associated with the resource.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for ListTagsForResource
$result = $client->listTagsForResource([
'resourceArn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8',
]);
Result syntax:
[
'tags' => [
[
'key' => 'ExampleKey',
'value' => 'ExampleValue',
],
],
]
RejectChannelHandshake
$result = $client->rejectChannelHandshake([/* ... */]); $promise = $client->rejectChannelHandshakeAsync([/* ... */]);
Rejects a pending channel handshake request.
Parameter Syntax
$result = $client->rejectChannelHandshake([
'catalog' => '<string>', // REQUIRED
'identifier' => '<string>', // REQUIRED
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the handshake request.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the channel handshake to reject.
Result Syntax
[
'channelHandshakeDetail' => [
'arn' => '<string>',
'id' => '<string>',
'status' => 'PENDING|ACCEPTED|REJECTED|CANCELED|EXPIRED',
],
]
Result Details
Members
- channelHandshakeDetail
-
- Type: RejectChannelHandshakeDetail structure
Details of the rejected channel handshake.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
Examples
Example 1: Example for RejectChannelHandshake
$result = $client->rejectChannelHandshake([
'catalog' => 'AWS',
'identifier' => 'ch-4fj3bd2o3vb91',
]);
Result syntax:
[
'channelHandshakeDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'id' => 'ch-4fj3bd2o3vb91',
'status' => 'REJECTED',
],
]
TagResource
$result = $client->tagResource([/* ... */]); $promise = $client->tagResourceAsync([/* ... */]);
Adds or updates tags for a specified resource.
Parameter Syntax
$result = $client->tagResource([
'resourceArn' => '<string>', // REQUIRED
'tags' => [ // REQUIRED
[
'key' => '<string>', // REQUIRED
'value' => '<string>', // REQUIRED
],
// ...
],
]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The Amazon Resource Name (ARN) of the resource to tag.
- tags
-
- Required: Yes
- Type: Array of Tag structures
Key-value pairs to associate with the resource.
Result Syntax
[]
Result Details
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for TagResource
$result = $client->tagResource([
'resourceArn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8/relationship/rs-l9o4fj3b5zb91',
'tags' => [
[
'key' => 'ExampleKey',
'value' => 'ExampleValue',
],
],
]);
Result syntax:
[ ]
UntagResource
$result = $client->untagResource([/* ... */]); $promise = $client->untagResourceAsync([/* ... */]);
Removes tags from a specified resource.
Parameter Syntax
$result = $client->untagResource([
'resourceArn' => '<string>', // REQUIRED
'tagKeys' => ['<string>', ...], // REQUIRED
]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The Amazon Resource Name (ARN) of the resource to remove tags from.
- tagKeys
-
- Required: Yes
- Type: Array of strings
The keys of the tags to remove from the resource.
Result Syntax
[]
Result Details
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for UntagResource
$result = $client->untagResource([
'resourceArn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/channel-handshake/ch-4fj3bd2o3vb91',
'tagKeys' => [
'ExampleKey',
],
]);
Result syntax:
[ ]
UpdateProgramManagementAccount
$result = $client->updateProgramManagementAccount([/* ... */]); $promise = $client->updateProgramManagementAccountAsync([/* ... */]);
Updates the properties of a program management account.
Parameter Syntax
$result = $client->updateProgramManagementAccount([
'catalog' => '<string>', // REQUIRED
'displayName' => '<string>',
'identifier' => '<string>', // REQUIRED
'revision' => '<string>',
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the program management account.
- displayName
-
- Type: string
The new display name for the program management account.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the program management account to update.
- revision
-
- Type: string
The current revision number of the program management account.
Result Syntax
[
'programManagementAccountDetail' => [
'arn' => '<string>',
'displayName' => '<string>',
'id' => '<string>',
'revision' => '<string>',
],
]
Result Details
Members
- programManagementAccountDetail
-
- Type: UpdateProgramManagementAccountDetail structure
Details of the updated program management account.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for UpdateProgramManagementAccount
$result = $client->updateProgramManagementAccount([
'catalog' => 'AWS',
'displayName' => 'TestDisplayName',
'identifier' => 'pma-u8ic702rtzng8',
'revision' => '3',
]);
Result syntax:
[
'programManagementAccountDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8',
'displayName' => 'TestDisplayName',
'id' => 'pma-u8ic702rtzng8',
'revision' => '4',
],
]
UpdateRelationship
$result = $client->updateRelationship([/* ... */]); $promise = $client->updateRelationshipAsync([/* ... */]);
Updates the properties of a partner relationship.
Parameter Syntax
$result = $client->updateRelationship([
'catalog' => '<string>', // REQUIRED
'displayName' => '<string>',
'identifier' => '<string>', // REQUIRED
'programManagementAccountIdentifier' => '<string>', // REQUIRED
'requestedSupportPlan' => [
'partnerLedSupport' => [
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
'provider' => 'DISTRIBUTOR|DISTRIBUTION_SELLER',
'tamLocation' => '<string>', // REQUIRED
],
'resoldBusiness' => [
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
],
'resoldEnterprise' => [
'chargeAccountId' => '<string>',
'coverage' => 'ENTIRE_ORGANIZATION|MANAGEMENT_ACCOUNT_ONLY', // REQUIRED
'tamLocation' => '<string>', // REQUIRED
],
],
'revision' => '<string>',
]);
Parameter Details
Members
- catalog
-
- Required: Yes
- Type: string
The catalog identifier for the relationship.
- displayName
-
- Type: string
The new display name for the relationship.
- identifier
-
- Required: Yes
- Type: string
The unique identifier of the relationship to update.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account associated with the relationship.
- requestedSupportPlan
-
- Type: SupportPlan structure
The updated support plan for the relationship.
- revision
-
- Type: string
The current revision number of the relationship.
Result Syntax
[
'relationshipDetail' => [
'arn' => '<string>',
'displayName' => '<string>',
'id' => '<string>',
'revision' => '<string>',
],
]
Result Details
Members
- relationshipDetail
-
- Type: UpdateRelationshipDetail structure
Details of the updated relationship.
Errors
- ResourceNotFoundException:
The specified resource was not found.
- InternalServerException:
An internal server error occurred while processing the request.
- ValidationException:
The request failed validation due to invalid input parameters.
- ThrottlingException:
The request was throttled due to too many requests being sent in a short period.
- AccessDeniedException:
The request was denied due to insufficient permissions.
- ConflictException:
The request could not be completed due to a conflict with the current state of the resource.
Examples
Example 1: Example for UpdateRelationship
$result = $client->updateRelationship([
'catalog' => 'AWS',
'displayName' => 'TestDisplayName',
'identifier' => 'rs-l9o4fj3b5zb91',
'programManagementAccountIdentifier' => 'pma-u8ic702rtzng8',
'revision' => '3',
]);
Result syntax:
[
'relationshipDetail' => [
'arn' => 'arn:aws:partnercentral:us-east-1:123456789012:catalog/AWS/program-management-account/pma-u8ic702rtzng8/relationship/rs-l9o4fj3b5zb91',
'displayName' => 'TestDisplayName',
'id' => 'rs-l9o4fj3b5zb91',
'revision' => '4',
],
]
Shapes
AcceptChannelHandshakeDetail
Description
Contains details about an accepted channel handshake.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the accepted handshake.
- id
-
- Type: string
The unique identifier of the accepted handshake.
- status
-
- Type: string
The current status of the accepted handshake.
AccessDeniedException
Description
The request was denied due to insufficient permissions.
Members
- message
-
- Required: Yes
- Type: string
A message describing the access denial.
- reason
-
- Type: string
The reason for the access denial.
CancelChannelHandshakeDetail
Description
Contains details about a canceled channel handshake.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the canceled handshake.
- id
-
- Type: string
The unique identifier of the canceled handshake.
- status
-
- Type: string
The current status of the canceled handshake.
ChannelHandshakePayload
Description
Contains the payload data for different types of channel handshakes.
Members
- revokeServicePeriodPayload
-
- Type: RevokeServicePeriodPayload structure
Payload for revoking a service period handshake.
- startServicePeriodPayload
-
- Type: StartServicePeriodPayload structure
Payload for starting a service period handshake.
ChannelHandshakeSummary
Description
Summary information about a channel handshake.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the handshake.
- associatedResourceId
-
- Type: string
The identifier of the resource associated with the handshake.
- catalog
-
- Type: string
The catalog identifier associated with the handshake.
- createdAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the handshake was created.
- detail
-
- Type: HandshakeDetail structure
Detailed information about the handshake.
- handshakeType
-
- Type: string
The type of the handshake.
- id
-
- Type: string
The unique identifier of the handshake.
- ownerAccountId
-
- Type: string
The AWS account ID of the handshake owner.
- receiverAccountId
-
- Type: string
The AWS account ID of the handshake receiver.
- senderAccountId
-
- Type: string
The AWS account ID of the handshake sender.
- senderDisplayName
-
- Type: string
The display name of the handshake sender.
- status
-
- Type: string
The current status of the handshake.
- updatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the handshake was last updated.
ConflictException
Description
The request could not be completed due to a conflict with the current state of the resource.
Members
- message
-
- Required: Yes
- Type: string
A message describing the conflict.
- resourceId
-
- Required: Yes
- Type: string
The identifier of the resource that caused the conflict.
- resourceType
-
- Required: Yes
- Type: string
The type of the resource that caused the conflict.
CreateChannelHandshakeDetail
Description
Contains details about a newly created channel handshake.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the created handshake.
- id
-
- Type: string
The unique identifier of the created handshake.
CreateProgramManagementAccountDetail
Description
Contains details about a newly created program management account.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the created program management account.
- id
-
- Type: string
The unique identifier of the created program management account.
CreateRelationshipDetail
Description
Contains details about a newly created relationship.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the created relationship.
- id
-
- Type: string
The unique identifier of the created relationship.
HandshakeDetail
Description
Contains detailed information about different types of handshakes.
Members
- programManagementAccountHandshakeDetail
-
- Type: ProgramManagementAccountHandshakeDetail structure
Details for a program management account handshake.
- revokeServicePeriodHandshakeDetail
-
- Type: RevokeServicePeriodHandshakeDetail structure
Details for a revoke service period handshake.
- startServicePeriodHandshakeDetail
-
- Type: StartServicePeriodHandshakeDetail structure
Details for a start service period handshake.
InternalServerException
Description
An internal server error occurred while processing the request.
Members
- message
-
- Required: Yes
- Type: string
A message describing the internal server error.
ListChannelHandshakesTypeFilters
Description
Type-specific filters for listing channel handshakes.
Members
- programManagementAccountTypeFilters
-
- Type: ProgramManagementAccountTypeFilters structure
Filters specific to program management account handshakes.
- revokeServicePeriodTypeFilters
-
- Type: RevokeServicePeriodTypeFilters structure
Filters specific to revoke service period handshakes.
- startServicePeriodTypeFilters
-
- Type: StartServicePeriodTypeFilters structure
Filters specific to start service period handshakes.
ListChannelHandshakesTypeSort
Description
Type-specific sorting options for listing channel handshakes.
Members
- programManagementAccountTypeSort
-
- Type: ProgramManagementAccountTypeSort structure
Sorting options specific to program management account handshakes.
- revokeServicePeriodTypeSort
-
- Type: RevokeServicePeriodTypeSort structure
Sorting options specific to revoke service period handshakes.
- startServicePeriodTypeSort
-
- Type: StartServicePeriodTypeSort structure
Sorting options specific to start service period handshakes.
ListProgramManagementAccountsSortBase
Description
Base sorting configuration for program management accounts.
Members
- sortBy
-
- Required: Yes
- Type: string
The field to sort by.
- sortOrder
-
- Required: Yes
- Type: string
The sort order (ascending or descending).
ListRelationshipsSortBase
Description
Base sorting configuration for relationships.
Members
- sortBy
-
- Required: Yes
- Type: string
The field to sort by.
- sortOrder
-
- Required: Yes
- Type: string
The sort order (ascending or descending).
PartnerLedSupport
Description
Configuration for partner-led support plans.
Members
- coverage
-
- Required: Yes
- Type: string
The coverage level for partner-led support.
- provider
-
- Type: string
The provider of the partner-led support.
- tamLocation
-
- Required: Yes
- Type: string
The location of the Technical Account Manager (TAM).
ProgramManagementAccountHandshakeDetail
Description
Details specific to program management account handshakes.
Members
- program
-
- Type: string
The program associated with the handshake.
ProgramManagementAccountSummary
Description
Summary information about a program management account.
Members
- accountId
-
- Type: string
The AWS account ID associated with the program management account.
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the program management account.
- catalog
-
- Type: string
The catalog identifier associated with the account.
- createdAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the account was created.
- displayName
-
- Type: string
The display name of the program management account.
- id
-
- Type: string
The unique identifier of the program management account.
- program
-
- Type: string
The program type for the management account.
- revision
-
- Type: string
The current revision number of the program management account.
- startDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start date of the program management account.
- status
-
- Type: string
The current status of the program management account.
- updatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the account was last updated.
ProgramManagementAccountTypeFilters
Description
Type-specific filters for program management accounts.
Members
- programs
-
- Type: Array of strings
Filter by program types.
ProgramManagementAccountTypeSort
Description
Type-specific sorting options for program management accounts.
Members
- sortBy
-
- Required: Yes
- Type: string
The field to sort by.
- sortOrder
-
- Required: Yes
- Type: string
The sort order (ascending or descending).
RejectChannelHandshakeDetail
Description
Contains details about a rejected channel handshake.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the rejected handshake.
- id
-
- Type: string
The unique identifier of the rejected handshake.
- status
-
- Type: string
The current status of the rejected handshake.
RelationshipDetail
Description
Detailed information about a partner relationship.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the relationship.
- associatedAccountId
-
- Type: string
The AWS account ID associated in this relationship.
- associationType
-
- Type: string
The type of association for the relationship.
- catalog
-
- Type: string
The catalog identifier associated with the relationship.
- createdAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the relationship was created.
- displayName
-
- Type: string
The display name of the relationship.
- id
-
- Type: string
The unique identifier of the relationship.
- programManagementAccountId
-
- Type: string
The identifier of the program management account.
- resaleAccountModel
-
- Type: string
The resale account model for the relationship.
- revision
-
- Type: string
The current revision number of the relationship.
- sector
-
- Type: string
The business sector for the relationship.
- startDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start date of the relationship.
- updatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the relationship was last updated.
RelationshipSummary
Description
Summary information about a partner relationship.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the relationship.
- associatedAccountId
-
- Type: string
The AWS account ID associated in this relationship.
- associationType
-
- Type: string
The type of association for the relationship.
- catalog
-
- Type: string
The catalog identifier associated with the relationship.
- createdAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the relationship was created.
- displayName
-
- Type: string
The display name of the relationship.
- id
-
- Type: string
The unique identifier of the relationship.
- programManagementAccountId
-
- Type: string
The identifier of the program management account.
- revision
-
- Type: string
The current revision number of the relationship.
- sector
-
- Type: string
The business sector for the relationship.
- startDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start date of the relationship.
- updatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the relationship was last updated.
ResoldBusiness
Description
Configuration for resold business support plans.
Members
- coverage
-
- Required: Yes
- Type: string
The coverage level for resold business support.
ResoldEnterprise
Description
Configuration for resold enterprise support plans.
Members
- chargeAccountId
-
- Type: string
The AWS account ID to charge for the support plan.
- coverage
-
- Required: Yes
- Type: string
The coverage level for resold enterprise support.
- tamLocation
-
- Required: Yes
- Type: string
The location of the Technical Account Manager (TAM).
ResourceNotFoundException
Description
The specified resource was not found.
Members
- message
-
- Required: Yes
- Type: string
A message describing the resource not found error.
- resourceId
-
- Type: string
The identifier of the resource that was not found.
- resourceType
-
- Type: string
The type of the resource that was not found.
RevokeServicePeriodHandshakeDetail
Description
Details specific to revoke service period handshakes.
Members
- endDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The end date of the service period being revoked.
- minimumNoticeDays
-
- Type: string
The minimum number of days notice required for revocation.
- note
-
- Type: string
A note explaining the reason for revoking the service period.
- servicePeriodType
-
- Type: string
The type of service period being revoked.
- startDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start date of the service period being revoked.
RevokeServicePeriodPayload
Description
Payload for revoke service period handshake requests.
Members
- note
-
- Type: string
A note explaining the reason for revoking the service period.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account.
RevokeServicePeriodTypeFilters
Description
Filters specific to revoke service period handshakes.
Members
- servicePeriodTypes
-
- Type: Array of strings
Filter by service period types.
RevokeServicePeriodTypeSort
Description
Sorting options specific to revoke service period handshakes.
Members
- sortBy
-
- Required: Yes
- Type: string
The field to sort by.
- sortOrder
-
- Required: Yes
- Type: string
The sort order (ascending or descending).
ServiceQuotaExceededException
Description
The request would exceed a service quota limit.
Members
- message
-
- Required: Yes
- Type: string
A message describing the service quota exceeded error.
- quotaCode
-
- Required: Yes
- Type: string
The code identifying the specific quota that would be exceeded.
- resourceId
-
- Required: Yes
- Type: string
The identifier of the resource that would exceed the quota.
- resourceType
-
- Required: Yes
- Type: string
The type of the resource that would exceed the quota.
StartServicePeriodHandshakeDetail
Description
Details specific to start service period handshakes.
Members
- endDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The end date of the service period.
- minimumNoticeDays
-
- Type: string
The minimum number of days notice required for changes.
- note
-
- Type: string
A note providing additional information about the service period.
- servicePeriodType
-
- Type: string
The type of service period being started.
- startDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The start date of the service period.
StartServicePeriodPayload
Description
Payload for start service period handshake requests.
Members
- endDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The end date of the service period.
- minimumNoticeDays
-
- Type: string
The minimum number of days notice required for changes.
- note
-
- Type: string
A note providing additional information about the service period.
- programManagementAccountIdentifier
-
- Required: Yes
- Type: string
The identifier of the program management account.
- servicePeriodType
-
- Required: Yes
- Type: string
The type of service period being started.
StartServicePeriodTypeFilters
Description
Filters specific to start service period handshakes.
Members
- servicePeriodTypes
-
- Type: Array of strings
Filter by service period types.
StartServicePeriodTypeSort
Description
Sorting options specific to start service period handshakes.
Members
- sortBy
-
- Required: Yes
- Type: string
The field to sort by.
- sortOrder
-
- Required: Yes
- Type: string
The sort order (ascending or descending).
SupportPlan
Description
Configuration for different types of support plans.
Members
- partnerLedSupport
-
- Type: PartnerLedSupport structure
Configuration for partner-led support plans.
- resoldBusiness
-
- Type: ResoldBusiness structure
Configuration for resold business support plans.
- resoldEnterprise
-
- Type: ResoldEnterprise structure
Configuration for resold enterprise support plans.
Tag
Description
A key-value pair that can be associated with a resource.
Members
- key
-
- Required: Yes
- Type: string
The key of the tag.
- value
-
- Required: Yes
- Type: string
The value of the tag.
ThrottlingException
Description
The request was throttled due to too many requests being sent in a short period.
Members
- message
-
- Required: Yes
- Type: string
A message describing the throttling error.
- quotaCode
-
- Type: string
The quota code associated with the throttling error.
- serviceCode
-
- Type: string
The service code associated with the throttling error.
UpdateProgramManagementAccountDetail
Description
Contains details about an updated program management account.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the updated program management account.
- displayName
-
- Type: string
The updated display name of the program management account.
- id
-
- Type: string
The unique identifier of the updated program management account.
- revision
-
- Type: string
The new revision number of the program management account.
UpdateRelationshipDetail
Description
Contains details about an updated relationship.
Members
- arn
-
- Type: string
The Amazon Resource Name (ARN) of the updated relationship.
- displayName
-
- Type: string
The updated display name of the relationship.
- id
-
- Type: string
The unique identifier of the updated relationship.
- revision
-
- Type: string
The new revision number of the relationship.
ValidationException
Description
The request failed validation due to invalid input parameters.
Members
- fieldList
-
- Type: Array of ValidationExceptionField structures
A list of fields that failed validation.
- message
-
- Required: Yes
- Type: string
A message describing the validation error.
- reason
-
- Required: Yes
- Type: string
The reason for the validation failure.
ValidationExceptionField
Description
Information about a field that failed validation.
Members
- code
-
- Required: Yes
- Type: string
The validation error code for the field.
- message
-
- Required: Yes
- Type: string
A descriptive message about the validation error.
- name
-
- Required: Yes
- Type: string
The name of the field that failed validation.