:doc:`Transfer <../../transfer>` / Client / describe_web_app

****************
describe_web_app
****************



.. py:method:: Transfer.Client.describe_web_app(**kwargs)

  

  Describes the web app that's identified by ``WebAppId``. The response includes endpoint configuration details such as whether the web app is publicly accessible or VPC hosted.

   

  For more information about using VPC endpoints with Transfer Family, see `Create a Transfer Family web app in a VPC <https://docs.aws.amazon.com/transfer/latest/userguide/create-webapp-in-vpc.html>`__.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWebApp>`_  


  **Request Syntax**
  ::

    response = client.describe_web_app(
        WebAppId='string'
    )
    
  :type WebAppId: string
  :param WebAppId: **[REQUIRED]** 

    Provide the unique identifier for the web app.

    

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

    
    ::

      {
          'WebApp': {
              'Arn': 'string',
              'WebAppId': 'string',
              'DescribedIdentityProviderDetails': {
                  'IdentityCenterConfig': {
                      'ApplicationArn': 'string',
                      'InstanceArn': 'string',
                      'Role': 'string'
                  }
              },
              'AccessEndpoint': 'string',
              'WebAppEndpoint': 'string',
              'WebAppUnits': {
                  'Provisioned': 123
              },
              'Tags': [
                  {
                      'Key': 'string',
                      'Value': 'string'
                  },
              ],
              'WebAppEndpointPolicy': 'FIPS'|'STANDARD',
              'EndpointType': 'PUBLIC'|'VPC',
              'DescribedEndpointDetails': {
                  'Vpc': {
                      'SubnetIds': [
                          'string',
                      ],
                      'VpcId': 'string',
                      'VpcEndpointId': 'string'
                  }
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **WebApp** *(dict) --* 

        Returns a structure that contains the details of the web app.

        
        

        - **Arn** *(string) --* 

          The Amazon Resource Name (ARN) of the web app.

          
        

        - **WebAppId** *(string) --* 

          The unique identifier for the web app.

          
        

        - **DescribedIdentityProviderDetails** *(dict) --* 

          A structure that contains the details for the identity provider used by the web app.

          .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``IdentityCenterConfig``.     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'}


        
          

          - **IdentityCenterConfig** *(dict) --* 

            Returns a structure for your identity provider details. This structure contains the instance ARN and role being used for the web app.

            
            

            - **ApplicationArn** *(string) --* 

              The Amazon Resource Name (ARN) for the IAM Identity Center application: this value is set automatically when you create your web app.

              
            

            - **InstanceArn** *(string) --* 

              The Amazon Resource Name (ARN) for the IAM Identity Center used for the web app.

              
            

            - **Role** *(string) --* 

              The IAM role in IAM Identity Center used for the web app.

              
        
      
        

        - **AccessEndpoint** *(string) --* 

          The ``AccessEndpoint`` is the URL that you provide to your users for them to interact with the Transfer Family web app. You can specify a custom URL or use the default value.

          
        

        - **WebAppEndpoint** *(string) --* 

          The ``WebAppEndpoint`` is the unique URL for your Transfer Family web app. This is the value that you use when you configure **Origins** on CloudFront.

          
        

        - **WebAppUnits** *(dict) --* 

          A union that contains the value for number of concurrent connections or the user sessions on your web app.

          .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``Provisioned``.     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'}


        
          

          - **Provisioned** *(integer) --* 

            An integer that represents the number of units for your desired number of concurrent connections, or the number of user sessions on your web app at the same time.

             

            Each increment allows an additional 250 concurrent sessions: a value of ``1`` sets the number of concurrent sessions to 250; ``2`` sets a value of 500, and so on.

            
      
        

        - **Tags** *(list) --* 

          Key-value pairs that can be used to group and search for web apps. Tags are metadata attached to web apps for any purpose.

          
          

          - *(dict) --* 

            Creates a key-value pair for a specific resource. Tags are metadata that you can use to search for and group a resource for various purposes. You can apply tags to servers, users, and roles. A tag key can take more than one value. For example, to group servers for accounting purposes, you might create a tag called ``Group`` and assign the values ``Research`` and ``Accounting`` to that group.

            
            

            - **Key** *(string) --* 

              The name assigned to the tag that you create.

              
            

            - **Value** *(string) --* 

              Contains one or more values that you assigned to the key name you create.

              
        
      
        

        - **WebAppEndpointPolicy** *(string) --* 

          Setting for the type of endpoint policy for the web app. The default value is ``STANDARD``.

           

          If your web app was created in an Amazon Web Services GovCloud (US) Region, the value of this parameter can be ``FIPS``, which indicates the web app endpoint is FIPS-compliant.

          
        

        - **EndpointType** *(string) --* 

          The type of endpoint hosting the web app. Valid values are ``PUBLIC`` for publicly accessible endpoints and ``VPC`` for VPC-hosted endpoints that provide network isolation.

          
        

        - **DescribedEndpointDetails** *(dict) --* 

          The endpoint configuration details for the web app, including VPC settings if the endpoint is hosted within a VPC.

          .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``Vpc``.     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'}


        
          

          - **Vpc** *(dict) --* 

            The VPC configuration details when the web app endpoint is hosted within a VPC. This includes the VPC ID, subnet IDs, and VPC endpoint ID.

            
            

            - **SubnetIds** *(list) --* 

              The list of subnet IDs within the VPC where the web app endpoint is deployed. These subnets must be in the same VPC and provide network connectivity for the endpoint.

              
              

              - *(string) --* 
          
            

            - **VpcId** *(string) --* 

              The identifier of the VPC where the web app endpoint is hosted.

              
            

            - **VpcEndpointId** *(string) --* 

              The identifier of the VPC endpoint created for the web app.

              
        
      
    
  
  **Exceptions**
  
  *   :py:class:`Transfer.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`Transfer.Client.exceptions.InvalidRequestException`

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

  
  *   :py:class:`Transfer.Client.exceptions.InternalServiceError`

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

  