:doc:`PartnerCentralSellingAPI <../../partnercentral-selling>` / Client / start_engagement_by_accepting_invitation_task

*********************************************
start_engagement_by_accepting_invitation_task
*********************************************



.. py:method:: PartnerCentralSellingAPI.Client.start_engagement_by_accepting_invitation_task(**kwargs)

  

  This action starts the engagement by accepting an ``EngagementInvitation``. The task is asynchronous and involves the following steps: accepting the invitation, creating an opportunity in the partner’s account from the AWS opportunity, and copying details for tracking. When completed, an ``Opportunity Created`` event is generated, indicating that the opportunity has been successfully created in the partner's account.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartEngagementByAcceptingInvitationTask>`_  


  **Request Syntax**
  ::

    response = client.start_engagement_by_accepting_invitation_task(
        Catalog='string',
        ClientToken='string',
        Identifier='string',
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ]
    )
    
  :type Catalog: string
  :param Catalog: **[REQUIRED]** 

    Specifies the catalog related to the task. Use ``AWS`` for production engagements and ``Sandbox`` for testing scenarios.

    

  
  :type ClientToken: string
  :param ClientToken: **[REQUIRED]** 

    A unique, case-sensitive identifier provided by the client that helps to ensure the idempotency of the request. This can be a random or meaningful string but must be unique for each request.

    This field is autopopulated if not provided.

  
  :type Identifier: string
  :param Identifier: **[REQUIRED]** 

    Specifies the unique identifier of the ``EngagementInvitation`` to be accepted. Providing the correct identifier helps ensure that the correct engagement is processed.

    

  
  :type Tags: list
  :param Tags: 

    A map of the key-value pairs of the tag or tags to assign.

    

  
    - *(dict) --* 

      The key-value pair assigned to a specified resource.

      

    
      - **Key** *(string) --* **[REQUIRED]** 

        The key in the tag.

        

      
      - **Value** *(string) --* **[REQUIRED]** 

        The value in the tag.

        

      
    

  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'TaskId': 'string',
          'TaskArn': 'string',
          'StartTime': datetime(2015, 1, 1),
          'TaskStatus': 'IN_PROGRESS'|'COMPLETE'|'FAILED',
          'Message': 'string',
          'ReasonCode': 'InvitationAccessDenied'|'InvitationValidationFailed'|'EngagementAccessDenied'|'OpportunityAccessDenied'|'ResourceSnapshotJobAccessDenied'|'ResourceSnapshotJobValidationFailed'|'ResourceSnapshotJobConflict'|'EngagementValidationFailed'|'EngagementConflict'|'OpportunitySubmissionFailed'|'EngagementInvitationConflict'|'InternalError'|'OpportunityValidationFailed'|'OpportunityConflict'|'ResourceSnapshotAccessDenied'|'ResourceSnapshotValidationFailed'|'ResourceSnapshotConflict'|'ServiceQuotaExceeded'|'RequestThrottled'|'ContextNotFound'|'CustomerProjectContextNotPermitted'|'DisqualifiedLeadNotPermitted',
          'OpportunityId': 'string',
          'ResourceSnapshotJobId': 'string',
          'EngagementInvitationId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **TaskId** *(string) --* 

        The unique identifier of the task, used to track the task’s progress.

        
      

      - **TaskArn** *(string) --* 

        The Amazon Resource Name (ARN) of the task, used for tracking and managing the task within AWS.

        
      

      - **StartTime** *(datetime) --* 

        The timestamp indicating when the task was initiated. The format follows RFC 3339 section 5.6.

        
      

      - **TaskStatus** *(string) --* 

        Indicates the current status of the task.

        
      

      - **Message** *(string) --* 

        If the task fails, this field contains a detailed message describing the failure and possible recovery steps.

        
      

      - **ReasonCode** *(string) --* 

        Indicates the reason for task failure using an enumerated code.

        
      

      - **OpportunityId** *(string) --* 

        Returns the original opportunity identifier passed in the request. This is the unique identifier for the opportunity.

        
      

      - **ResourceSnapshotJobId** *(string) --* 

        The identifier of the Resource Snapshot Job created as part of this task.

        
      

      - **EngagementInvitationId** *(string) --* 

        Returns the identifier of the engagement invitation that was accepted and used to create the opportunity.

        
  
  **Exceptions**
  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.ConflictException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.ThrottlingException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.InternalServerException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.ValidationException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.ServiceQuotaExceededException`

  
  *   :py:class:`PartnerCentralSellingAPI.Client.exceptions.ResourceNotFoundException`

  