CleanRoomsService / Client / update_collaboration_change_request

update_collaboration_change_request

CleanRoomsService.Client.update_collaboration_change_request(**kwargs)

Updates an existing collaboration change request. This operation allows approval actions for pending change requests in collaborations (APPROVE, DENY, CANCEL, COMMIT).

For change requests without automatic approval, a member in the collaboration can manually APPROVE or DENY a change request. The collaboration owner can manually CANCEL or COMMIT a change request.

See also: AWS API Documentation

Request Syntax

response = client.update_collaboration_change_request(
    collaborationIdentifier='string',
    changeRequestIdentifier='string',
    action='APPROVE'|'DENY'|'CANCEL'|'COMMIT'
)
Parameters:
  • collaborationIdentifier (string) –

    [REQUIRED]

    The unique identifier of the collaboration that contains the change request to be updated.

  • changeRequestIdentifier (string) –

    [REQUIRED]

    The unique identifier of the specific change request to be updated within the collaboration.

  • action (string) –

    [REQUIRED]

    The action to perform on the change request. Valid values include APPROVE (approve the change), DENY (reject the change), CANCEL (cancel the request), and COMMIT (commit after the request is approved).

    For change requests without automatic approval, a member in the collaboration can manually APPROVE or DENY a change request. The collaboration owner can manually CANCEL or COMMIT a change request.

Return type:

dict

Returns:

Response Syntax

{
    'collaborationChangeRequest': {
        'id': 'string',
        'collaborationId': 'string',
        'createTime': datetime(2015, 1, 1),
        'updateTime': datetime(2015, 1, 1),
        'status': 'PENDING'|'APPROVED'|'CANCELLED'|'DENIED'|'COMMITTED',
        'isAutoApproved': True|False,
        'changes': [
            {
                'specificationType': 'MEMBER'|'COLLABORATION',
                'specification': {
                    'member': {
                        'accountId': 'string',
                        'memberAbilities': [
                            'CAN_QUERY'|'CAN_RECEIVE_RESULTS'|'CAN_RUN_JOB',
                        ],
                        'mlMemberAbilities': {
                            'customMLMemberAbilities': [
                                'CAN_RECEIVE_MODEL_OUTPUT'|'CAN_RECEIVE_INFERENCE_OUTPUT',
                            ]
                        },
                        'paymentConfiguration': {
                            'queryCompute': {
                                'isResponsible': True|False
                            },
                            'machineLearning': {
                                'modelTraining': {
                                    'isResponsible': True|False
                                },
                                'modelInference': {
                                    'isResponsible': True|False
                                },
                                'syntheticDataGeneration': {
                                    'isResponsible': True|False
                                }
                            },
                            'jobCompute': {
                                'isResponsible': True|False
                            }
                        },
                        'displayName': 'string'
                    },
                    'collaboration': {
                        'autoApprovedChangeTypes': [
                            'ADD_MEMBER'|'GRANT_RECEIVE_RESULTS_ABILITY'|'REVOKE_RECEIVE_RESULTS_ABILITY',
                        ]
                    }
                },
                'types': [
                    'ADD_MEMBER'|'GRANT_RECEIVE_RESULTS_ABILITY'|'REVOKE_RECEIVE_RESULTS_ABILITY'|'EDIT_AUTO_APPROVED_CHANGE_TYPES'|'ADD_PAYER_CANDIDATE'|'REMOVE_PAYER_CANDIDATE'|'GRANT_CAN_RECEIVE_MODEL_OUTPUT'|'GRANT_CAN_RECEIVE_INFERENCE_OUTPUT'|'REVOKE_CAN_RECEIVE_MODEL_OUTPUT'|'REVOKE_CAN_RECEIVE_INFERENCE_OUTPUT',
                ]
            },
        ],
        'approvals': {
            'string': {
                'status': 'APPROVED'|'DENIED'|'PENDING'
            }
        }
    }
}

Response Structure

  • (dict) –

    • collaborationChangeRequest (dict) –

      Represents a request to modify a collaboration. Change requests enable structured modifications to collaborations after they have been created.

      • id (string) –

        The unique identifier for the change request.

      • collaborationId (string) –

        The unique identifier for the collaboration being modified.

      • createTime (datetime) –

        The time when the change request was created.

      • updateTime (datetime) –

        The time when the change request was last updated.

      • status (string) –

        The current status of the change request. Valid values are PENDING, APPROVED, DENIED, COMMITTED, and CANCELLED.

      • isAutoApproved (boolean) –

        Whether the change request was automatically approved based on the collaboration’s auto-approval settings.

      • changes (list) –

        The list of changes specified in this change request.

        • (dict) –

          Represents a single change within a collaboration change request, containing the change identifier and specification.

          • specificationType (string) –

            The type of specification for this change.

          • specification (dict) –

            The specification details for this change.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: member, collaboration. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

            'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
            
            • member (dict) –

              The member change specification when the change type is MEMBER.

              • accountId (string) –

                The Amazon Web Services account ID of the member to add to the collaboration.

              • memberAbilities (list) –

                The abilities granted to the collaboration member. These determine what actions the member can perform within the collaboration.

                Note

                The following values are currently not supported: CAN_QUERY and CAN_RUN_JOB.

                Set the value of memberAbilities to [] to allow a member to contribute data.

                Set the value of memberAbilities to [CAN_RECEIVE_RESULTS] to allow a member to contribute data and receive results.

                • (string) –

              • mlMemberAbilities (dict) –

                The ML member abilities for a collaboration member.

                • customMLMemberAbilities (list) –

                  The custom ML member abilities for a collaboration member.

                  • (string) –

              • paymentConfiguration (dict) –

                An object representing the collaboration member’s payment responsibilities set by the collaboration creator.

                • queryCompute (dict) –

                  The collaboration member’s payment responsibilities set by the collaboration creator for query compute costs.

                  • isResponsible (boolean) –

                    Indicates whether the collaboration creator has configured the collaboration member to pay for query compute costs ( TRUE) or has not configured the collaboration member to pay for query compute costs ( FALSE).

                    Exactly one member can be configured to pay for query compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

                    If the collaboration creator hasn’t specified anyone as the member paying for query compute costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

                • machineLearning (dict) –

                  An object representing the collaboration member’s machine learning payment responsibilities set by the collaboration creator.

                  • modelTraining (dict) –

                    The payment responsibilities accepted by the member for model training.

                    • isResponsible (boolean) –

                      Indicates whether the collaboration creator has configured the collaboration member to pay for model training costs ( TRUE) or has not configured the collaboration member to pay for model training costs ( FALSE).

                      Exactly one member can be configured to pay for model training costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

                      If the collaboration creator hasn’t specified anyone as the member paying for model training costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

                  • modelInference (dict) –

                    The payment responsibilities accepted by the member for model inference.

                    • isResponsible (boolean) –

                      Indicates whether the collaboration creator has configured the collaboration member to pay for model inference costs ( TRUE) or has not configured the collaboration member to pay for model inference costs ( FALSE).

                      Exactly one member can be configured to pay for model inference costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

                      If the collaboration creator hasn’t specified anyone as the member paying for model inference costs, then the member who can query is the default payer. An error is returned if the collaboration creator sets a FALSE value for the member who can query.

                  • syntheticDataGeneration (dict) –

                    The payment configuration for machine learning synthetic data generation.

                    • isResponsible (boolean) –

                      Indicates who is responsible for paying for synthetic data generation.

                • jobCompute (dict) –

                  The compute configuration for the job.

                  • isResponsible (boolean) –

                    Indicates whether the collaboration creator has configured the collaboration member to pay for query and job compute costs ( TRUE) or has not configured the collaboration member to pay for query and job compute costs ( FALSE).

                    Exactly one member can be configured to pay for query and job compute costs. An error is returned if the collaboration creator sets a TRUE value for more than one member in the collaboration.

                    An error is returned if the collaboration creator sets a FALSE value for the member who can run queries and jobs.

              • displayName (string) –

                Specifies the display name that will be shown for this member in the collaboration. While this field is required when inviting new members, it becomes optional when modifying abilities of existing collaboration members.

            • collaboration (dict) –

              The collaboration configuration changes being requested. Currently, this only supports modifying which change types are auto-approved for the collaboration.

              • autoApprovedChangeTypes (list) –

                Defines requested updates to properties of the collaboration. Currently, this only supports modifying which change types are auto-approved for the collaboration.

                • (string) –

          • types (list) –

            The list of change types that were applied.

            • (string) –

      • approvals (dict) –

        A list of approval details from collaboration members, including approval status and multi-party approval workflow information.

        • (string) –

          • (dict) –

            Contains detailed information about the approval state of a given member in the collaboration for a given collaboration change request.

            • status (string) –

              The approval status of a member’s vote on the change request. Valid values are PENDING (if they haven’t voted), APPROVED, or DENIED.

Exceptions

  • CleanRoomsService.Client.exceptions.ConflictException

  • CleanRoomsService.Client.exceptions.ResourceNotFoundException

  • CleanRoomsService.Client.exceptions.InternalServerException

  • CleanRoomsService.Client.exceptions.ValidationException

  • CleanRoomsService.Client.exceptions.ThrottlingException

  • CleanRoomsService.Client.exceptions.AccessDeniedException