:doc:`WellArchitected <../../wellarchitected>` / Client / update_review_template_answer

*****************************
update_review_template_answer
*****************************



.. py:method:: WellArchitected.Client.update_review_template_answer(**kwargs)

  

  Update a review template answer.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateReviewTemplateAnswer>`_  


  **Request Syntax**
  ::

    response = client.update_review_template_answer(
        TemplateArn='string',
        LensAlias='string',
        QuestionId='string',
        SelectedChoices=[
            'string',
        ],
        ChoiceUpdates={
            'string': {
                'Status': 'SELECTED'|'NOT_APPLICABLE'|'UNSELECTED',
                'Reason': 'OUT_OF_SCOPE'|'BUSINESS_PRIORITIES'|'ARCHITECTURE_CONSTRAINTS'|'OTHER'|'NONE',
                'Notes': 'string'
            }
        },
        Notes='string',
        IsApplicable=True|False,
        Reason='OUT_OF_SCOPE'|'BUSINESS_PRIORITIES'|'ARCHITECTURE_CONSTRAINTS'|'OTHER'|'NONE'
    )
    
  :type TemplateArn: string
  :param TemplateArn: **[REQUIRED]** 

    The review template ARN.

    

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

    The alias of the lens.

     

    For Amazon Web Services official lenses, this is either the lens alias, such as ``serverless``, or the lens ARN, such as ``arn:aws:wellarchitected:us-east-1::lens/serverless``. Note that some operations (such as ExportLens and CreateLensShare) are not permitted on Amazon Web Services official lenses.

     

    For custom lenses, this is the lens ARN, such as ``arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef``.

     

    Each lens is identified by its  LensSummary$LensAlias.

    

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

    The ID of the question.

    

  
  :type SelectedChoices: list
  :param SelectedChoices: 

    List of selected choice IDs in a question answer.

     

    The values entered replace the previously selected choices.

    

  
    - *(string) --* 

      The ID of a choice.

      

    

  :type ChoiceUpdates: dict
  :param ChoiceUpdates: 

    A list of choices to be updated.

    

  
    - *(string) --* 

      The ID of a choice.

      

    
      - *(dict) --* 

        A list of choices to be updated.

        

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

          The status of a choice.

          

        
        - **Reason** *(string) --* 

          The reason why a choice is non-applicable to a question in your workload.

          

        
        - **Notes** *(string) --* 

          The notes associated with a choice.

          

        
      


  :type Notes: string
  :param Notes: 

    The notes associated with the workload.

     

    For a review template, these are the notes that will be associated with the workload when the template is applied.

    

  
  :type IsApplicable: boolean
  :param IsApplicable: 

    Defines whether this question is applicable to a lens review.

    

  
  :type Reason: string
  :param Reason: 

    The update reason.

    

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

    
    ::

      {
          'TemplateArn': 'string',
          'LensAlias': 'string',
          'Answer': {
              'QuestionId': 'string',
              'PillarId': 'string',
              'QuestionTitle': 'string',
              'QuestionDescription': 'string',
              'ImprovementPlanUrl': 'string',
              'HelpfulResourceUrl': 'string',
              'HelpfulResourceDisplayText': 'string',
              'Choices': [
                  {
                      'ChoiceId': 'string',
                      'Title': 'string',
                      'Description': 'string',
                      'HelpfulResource': {
                          'DisplayText': 'string',
                          'Url': 'string'
                      },
                      'ImprovementPlan': {
                          'DisplayText': 'string',
                          'Url': 'string'
                      },
                      'AdditionalResources': [
                          {
                              'Type': 'HELPFUL_RESOURCE'|'IMPROVEMENT_PLAN',
                              'Content': [
                                  {
                                      'DisplayText': 'string',
                                      'Url': 'string'
                                  },
                              ]
                          },
                      ]
                  },
              ],
              'SelectedChoices': [
                  'string',
              ],
              'ChoiceAnswers': [
                  {
                      'ChoiceId': 'string',
                      'Status': 'SELECTED'|'NOT_APPLICABLE'|'UNSELECTED',
                      'Reason': 'OUT_OF_SCOPE'|'BUSINESS_PRIORITIES'|'ARCHITECTURE_CONSTRAINTS'|'OTHER'|'NONE',
                      'Notes': 'string'
                  },
              ],
              'IsApplicable': True|False,
              'AnswerStatus': 'UNANSWERED'|'ANSWERED',
              'Notes': 'string',
              'Reason': 'OUT_OF_SCOPE'|'BUSINESS_PRIORITIES'|'ARCHITECTURE_CONSTRAINTS'|'OTHER'|'NONE'
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **TemplateArn** *(string) --* 

        The review template ARN.

        
      

      - **LensAlias** *(string) --* 

        The alias of the lens.

         

        For Amazon Web Services official lenses, this is either the lens alias, such as ``serverless``, or the lens ARN, such as ``arn:aws:wellarchitected:us-east-1::lens/serverless``. Note that some operations (such as ExportLens and CreateLensShare) are not permitted on Amazon Web Services official lenses.

         

        For custom lenses, this is the lens ARN, such as ``arn:aws:wellarchitected:us-west-2:123456789012:lens/0123456789abcdef01234567890abcdef``.

         

        Each lens is identified by its  LensSummary$LensAlias.

        
      

      - **Answer** *(dict) --* 

        An answer of the question.

        
        

        - **QuestionId** *(string) --* 

          The ID of the question.

          
        

        - **PillarId** *(string) --* 

          The ID used to identify a pillar, for example, ``security``.

           

          A pillar is identified by its  PillarReviewSummary$PillarId.

          
        

        - **QuestionTitle** *(string) --* 

          The title of the question.

          
        

        - **QuestionDescription** *(string) --* 

          The description of the question.

          
        

        - **ImprovementPlanUrl** *(string) --* 

          The improvement plan URL for a question in an Amazon Web Services official lenses.

           

          This value is only available if the question has been answered.

           

          This value does not apply to custom lenses.

          
        

        - **HelpfulResourceUrl** *(string) --* 

          The helpful resource URL.

           

          For Amazon Web Services official lenses, this is the helpful resource URL for a question or choice.

           

          For custom lenses, this is the helpful resource URL for a question and is only provided if ``HelpfulResourceDisplayText`` was specified for the question.

          
        

        - **HelpfulResourceDisplayText** *(string) --* 

          The helpful resource text to be displayed for a custom lens.

           

          .. note::

            

            This field does not apply to Amazon Web Services official lenses.

            

          
        

        - **Choices** *(list) --* 

          List of choices available for a question.

          
          

          - *(dict) --* 

            A choice available to answer question.

            
            

            - **ChoiceId** *(string) --* 

              The ID of a choice.

              
            

            - **Title** *(string) --* 

              The title of a choice.

              
            

            - **Description** *(string) --* 

              The description of a choice.

              
            

            - **HelpfulResource** *(dict) --* 

              The helpful resource (both text and URL) for a particular choice.

               

              This field only applies to custom lenses. Each choice can have only one helpful resource.

              
              

              - **DisplayText** *(string) --* 

                The display text for the choice content.

                
              

              - **Url** *(string) --* 

                The URL for the choice content.

                
          
            

            - **ImprovementPlan** *(dict) --* 

              The improvement plan (both text and URL) for a particular choice.

               

              This field only applies to custom lenses. Each choice can have only one improvement plan.

              
              

              - **DisplayText** *(string) --* 

                The display text for the choice content.

                
              

              - **Url** *(string) --* 

                The URL for the choice content.

                
          
            

            - **AdditionalResources** *(list) --* 

              The additional resources for a choice in a custom lens.

               

              A choice can have up to two additional resources: one of type ``HELPFUL_RESOURCE``, one of type ``IMPROVEMENT_PLAN``, or both.

              
              

              - *(dict) --* 

                The choice level additional resources for a custom lens.

                 

                This field does not apply to Amazon Web Services official lenses.

                
                

                - **Type** *(string) --* 

                  Type of additional resource for a custom lens.

                  
                

                - **Content** *(list) --* 

                  The URLs for additional resources, either helpful resources or improvement plans, for a custom lens. Up to five additional URLs can be specified.

                  
                  

                  - *(dict) --* 

                    The choice content.

                    
                    

                    - **DisplayText** *(string) --* 

                      The display text for the choice content.

                      
                    

                    - **Url** *(string) --* 

                      The URL for the choice content.

                      
                
              
            
          
        
      
        

        - **SelectedChoices** *(list) --* 

          List of selected choice IDs in a question answer.

           

          The values entered replace the previously selected choices.

          
          

          - *(string) --* 

            The ID of a choice.

            
      
        

        - **ChoiceAnswers** *(list) --* 

          A list of selected choices to a question in your review template.

          
          

          - *(dict) --* 

            A choice that has been answered on a question in your workload.

            
            

            - **ChoiceId** *(string) --* 

              The ID of a choice.

              
            

            - **Status** *(string) --* 

              The status of a choice.

              
            

            - **Reason** *(string) --* 

              The reason why a choice is non-applicable to a question in your workload.

              
            

            - **Notes** *(string) --* 

              The notes associated with a choice.

              
        
      
        

        - **IsApplicable** *(boolean) --* 

          Defines whether this question is applicable to a lens review.

          
        

        - **AnswerStatus** *(string) --* 

          The status of whether or not this question has been answered.

          
        

        - **Notes** *(string) --* 

          The notes associated with the workload.

           

          For a review template, these are the notes that will be associated with the workload when the template is applied.

          
        

        - **Reason** *(string) --* 

          The reason why the question is not applicable to your review template.

          
    
  
  **Exceptions**
  
  *   :py:class:`WellArchitected.Client.exceptions.ValidationException`

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

  
  *   :py:class:`WellArchitected.Client.exceptions.ConflictException`

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

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

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

  