:doc:`OpenSearchService <../../opensearch>` / Client / update_application

******************
update_application
******************



.. py:method:: OpenSearchService.Client.update_application(**kwargs)

  

  Updates the configuration and settings of an existing OpenSearch application.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/opensearch-2021-01-01/UpdateApplication>`_  


  **Request Syntax**
  ::

    response = client.update_application(
        id='string',
        dataSources=[
            {
                'dataSourceArn': 'string',
                'dataSourceDescription': 'string'
            },
        ],
        appConfigs=[
            {
                'key': 'opensearchDashboards.dashboardAdmin.users'|'opensearchDashboards.dashboardAdmin.groups',
                'value': 'string'
            },
        ]
    )
    
  :type id: string
  :param id: **[REQUIRED]** 

    The unique identifier for the OpenSearch application to be updated.

    

  
  :type dataSources: list
  :param dataSources: 

    The data sources to associate with the OpenSearch application.

    

  
    - *(dict) --* 

      Data sources that are associated with an OpenSearch application.

      

    
      - **dataSourceArn** *(string) --* 

        The Amazon Resource Name (ARN) of the domain. See `Identifiers for IAM Entities <https://docs.aws.amazon.com/IAM/latest/UserGuide/index.html>`__ in *Using Amazon Web Services Identity and Access Management* for more information.

        

      
      - **dataSourceDescription** *(string) --* 

        Detailed description of a data source.

        

      
    

  :type appConfigs: list
  :param appConfigs: 

    The configuration settings to modify for the OpenSearch application.

    

  
    - *(dict) --* 

      Configuration settings for an OpenSearch application. For more information, see `Using the OpenSearch user interface in Amazon OpenSearch Service <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/application.html>`__.

      

    
      - **key** *(string) --* 

        The configuration item to set, such as the admin role for the OpenSearch application.

        

      
      - **value** *(string) --* 

        The value assigned to the configuration key, such as an IAM user ARN.

        

      
    

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

    
    ::

      {
          'id': 'string',
          'name': 'string',
          'arn': 'string',
          'dataSources': [
              {
                  'dataSourceArn': 'string',
                  'dataSourceDescription': 'string'
              },
          ],
          'iamIdentityCenterOptions': {
              'enabled': True|False,
              'iamIdentityCenterInstanceArn': 'string',
              'iamRoleForIdentityCenterApplicationArn': 'string',
              'iamIdentityCenterApplicationArn': 'string'
          },
          'appConfigs': [
              {
                  'key': 'opensearchDashboards.dashboardAdmin.users'|'opensearchDashboards.dashboardAdmin.groups',
                  'value': 'string'
              },
          ],
          'createdAt': datetime(2015, 1, 1),
          'lastUpdatedAt': datetime(2015, 1, 1)
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **id** *(string) --* 

        The unique identifier of the updated OpenSearch application.

        
      

      - **name** *(string) --* 

        The name of the updated OpenSearch application.

        
      

      - **arn** *(string) --* 

        The Amazon Resource Name (ARN) of the domain. See `Identifiers for IAM Entities <https://docs.aws.amazon.com/IAM/latest/UserGuide/index.html>`__ in *Using Amazon Web Services Identity and Access Management* for more information.

        
      

      - **dataSources** *(list) --* 

        The data sources associated with the updated OpenSearch application.

        
        

        - *(dict) --* 

          Data sources that are associated with an OpenSearch application.

          
          

          - **dataSourceArn** *(string) --* 

            The Amazon Resource Name (ARN) of the domain. See `Identifiers for IAM Entities <https://docs.aws.amazon.com/IAM/latest/UserGuide/index.html>`__ in *Using Amazon Web Services Identity and Access Management* for more information.

            
          

          - **dataSourceDescription** *(string) --* 

            Detailed description of a data source.

            
      
    
      

      - **iamIdentityCenterOptions** *(dict) --* 

        The IAM Identity Center configuration for the updated OpenSearch application.

        
        

        - **enabled** *(boolean) --* 

          Indicates whether IAM Identity Center is enabled for the OpenSearch application.

          
        

        - **iamIdentityCenterInstanceArn** *(string) --* 

          The Amazon Resource Name (ARN) of the domain. See `Identifiers for IAM Entities <https://docs.aws.amazon.com/IAM/latest/UserGuide/index.html>`__ in *Using Amazon Web Services Identity and Access Management* for more information.

          
        

        - **iamRoleForIdentityCenterApplicationArn** *(string) --* 

          The Amazon Resource Name (ARN) of the IAM role assigned to the IAM Identity Center application for the OpenSearch application.

          
        

        - **iamIdentityCenterApplicationArn** *(string) --* 

          The Amazon Resource Name (ARN) of the domain. See `Identifiers for IAM Entities <https://docs.aws.amazon.com/IAM/latest/UserGuide/index.html>`__ in *Using Amazon Web Services Identity and Access Management* for more information.

          
    
      

      - **appConfigs** *(list) --* 

        The configuration settings for the updated OpenSearch application.

        
        

        - *(dict) --* 

          Configuration settings for an OpenSearch application. For more information, see `Using the OpenSearch user interface in Amazon OpenSearch Service <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/application.html>`__.

          
          

          - **key** *(string) --* 

            The configuration item to set, such as the admin role for the OpenSearch application.

            
          

          - **value** *(string) --* 

            The value assigned to the configuration key, such as an IAM user ARN.

            
      
    
      

      - **createdAt** *(datetime) --* 

        The timestamp when the OpenSearch application was originally created.

        
      

      - **lastUpdatedAt** *(datetime) --* 

        The timestamp when the OpenSearch application was last updated.

        
  
  **Exceptions**
  
  *   :py:class:`OpenSearchService.Client.exceptions.BaseException`

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

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

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

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

  
  *   :py:class:`OpenSearchService.Client.exceptions.InternalException`

  
  *   :py:class:`OpenSearchService.Client.exceptions.DisabledOperationException`

  