:doc:`AmplifyBackend <../../amplifybackend>` / Client / get_backend_auth

****************
get_backend_auth
****************



.. py:method:: AmplifyBackend.Client.get_backend_auth(**kwargs)

  

  Gets a backend auth details.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAuth>`_  


  **Request Syntax**
  ::

    response = client.get_backend_auth(
        AppId='string',
        BackendEnvironmentName='string',
        ResourceName='string'
    )
    
  :type AppId: string
  :param AppId: **[REQUIRED]** 

    The app ID.

    

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

    The name of the backend environment.

    

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

    The name of this resource.

    

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

    
    ::

      {
          'AppId': 'string',
          'BackendEnvironmentName': 'string',
          'Error': 'string',
          'ResourceConfig': {
              'AuthResources': 'USER_POOL_ONLY'|'IDENTITY_POOL_AND_USER_POOL',
              'IdentityPoolConfigs': {
                  'IdentityPoolName': 'string',
                  'UnauthenticatedLogin': True|False
              },
              'Service': 'COGNITO',
              'UserPoolConfigs': {
                  'ForgotPassword': {
                      'DeliveryMethod': 'EMAIL'|'SMS',
                      'EmailSettings': {
                          'EmailMessage': 'string',
                          'EmailSubject': 'string'
                      },
                      'SmsSettings': {
                          'SmsMessage': 'string'
                      }
                  },
                  'Mfa': {
                      'MFAMode': 'ON'|'OFF'|'OPTIONAL',
                      'Settings': {
                          'MfaTypes': [
                              'SMS'|'TOTP',
                          ],
                          'SmsMessage': 'string'
                      }
                  },
                  'OAuth': {
                      'DomainPrefix': 'string',
                      'OAuthGrantType': 'CODE'|'IMPLICIT',
                      'OAuthScopes': [
                          'PHONE'|'EMAIL'|'OPENID'|'PROFILE'|'AWS_COGNITO_SIGNIN_USER_ADMIN',
                      ],
                      'RedirectSignInURIs': [
                          'string',
                      ],
                      'RedirectSignOutURIs': [
                          'string',
                      ],
                      'SocialProviderSettings': {
                          'Facebook': {
                              'ClientId': 'string',
                              'ClientSecret': 'string'
                          },
                          'Google': {
                              'ClientId': 'string',
                              'ClientSecret': 'string'
                          },
                          'LoginWithAmazon': {
                              'ClientId': 'string',
                              'ClientSecret': 'string'
                          },
                          'SignInWithApple': {
                              'ClientId': 'string',
                              'KeyId': 'string',
                              'PrivateKey': 'string',
                              'TeamId': 'string'
                          }
                      }
                  },
                  'PasswordPolicy': {
                      'AdditionalConstraints': [
                          'REQUIRE_DIGIT'|'REQUIRE_LOWERCASE'|'REQUIRE_SYMBOL'|'REQUIRE_UPPERCASE',
                      ],
                      'MinimumLength': 123.0
                  },
                  'RequiredSignUpAttributes': [
                      'ADDRESS'|'BIRTHDATE'|'EMAIL'|'FAMILY_NAME'|'GENDER'|'GIVEN_NAME'|'LOCALE'|'MIDDLE_NAME'|'NAME'|'NICKNAME'|'PHONE_NUMBER'|'PICTURE'|'PREFERRED_USERNAME'|'PROFILE'|'UPDATED_AT'|'WEBSITE'|'ZONE_INFO',
                  ],
                  'SignInMethod': 'EMAIL'|'EMAIL_AND_PHONE_NUMBER'|'PHONE_NUMBER'|'USERNAME',
                  'UserPoolName': 'string',
                  'VerificationMessage': {
                      'DeliveryMethod': 'EMAIL'|'SMS',
                      'EmailSettings': {
                          'EmailMessage': 'string',
                          'EmailSubject': 'string'
                      },
                      'SmsSettings': {
                          'SmsMessage': 'string'
                      }
                  }
              }
          },
          'ResourceName': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 

      200 response

      
      

      - **AppId** *(string) --* 

        The app ID.

        
      

      - **BackendEnvironmentName** *(string) --* 

        The name of the backend environment.

        
      

      - **Error** *(string) --* 

        If the request fails, this error is returned.

        
      

      - **ResourceConfig** *(dict) --* 

        The resource configuration for authorization requests to the backend of your Amplify project.

        
        

        - **AuthResources** *(string) --* 

          Defines whether you want to configure only authentication or both authentication and authorization settings.

          
        

        - **IdentityPoolConfigs** *(dict) --* 

          Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of your auth resource in the Amplify project.

          
          

          - **IdentityPoolName** *(string) --* 

            Name of the Amazon Cognito identity pool used for authorization.

            
          

          - **UnauthenticatedLogin** *(boolean) --* 

            Set to true or false based on whether you want to enable guest authorization to your Amplify app.

            
      
        

        - **Service** *(string) --* 

          Defines the service name to use when configuring an authentication resource in your Amplify project.

          
        

        - **UserPoolConfigs** *(dict) --* 

          Describes authentication configuration for the Amazon Cognito user pool, provisioned as a part of your auth resource in the Amplify project.

          
          

          - **ForgotPassword** *(dict) --* 

            **(DEPRECATED)** Describes the forgotten password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

            
            

            - **DeliveryMethod** *(string) --* 

              **(DEPRECATED)** Describes which mode to use (either SMS or email) to deliver messages to app users who want to recover their password.

              
            

            - **EmailSettings** *(dict) --* 

              **(DEPRECATED)** The configuration for the email sent when an app user forgets their password.

              
              

              - **EmailMessage** *(string) --* 

                The contents of the email message.

                
              

              - **EmailSubject** *(string) --* 

                The contents of the subject line of the email message.

                
          
            

            - **SmsSettings** *(dict) --* 

              **(DEPRECATED)** The configuration for the SMS message sent when an app user forgets their password.

              
              

              - **SmsMessage** *(string) --* 

                The contents of the SMS message.

                
          
        
          

          - **Mfa** *(dict) --* 

            Describes whether to apply multi-factor authentication policies for your Amazon Cognito user pool configured as a part of your Amplify project.

            
            

            - **MFAMode** *(string) --* 

              Describes whether MFA should be [ON, OFF, or OPTIONAL] for authentication in your Amplify project.

              
            

            - **Settings** *(dict) --* 

              Describes the configuration settings and methods for your Amplify app users to use MFA.

              
              

              - **MfaTypes** *(list) --* 

                The supported MFA types.

                
                

                - *(string) --* 
            
              

              - **SmsMessage** *(string) --* 

                The body of the SMS message.

                
          
        
          

          - **OAuth** *(dict) --* 

            Describes the OAuth policy and rules for your Amazon Cognito user pool, configured as a part of your Amplify project.

            
            

            - **DomainPrefix** *(string) --* 

              The domain prefix for your Amplify app.

              
            

            - **OAuthGrantType** *(string) --* 

              The OAuth grant type that you use to allow app users to authenticate from your Amplify app.

              
            

            - **OAuthScopes** *(list) --* 

              List of OAuth-related flows used to allow your app users to authenticate from your Amplify app.

              
              

              - *(string) --* 
          
            

            - **RedirectSignInURIs** *(list) --* 

              The redirected URI for signing in to your Amplify app.

              
              

              - *(string) --* 
          
            

            - **RedirectSignOutURIs** *(list) --* 

              Redirect URLs that OAuth uses when a user signs out of an Amplify app.

              
              

              - *(string) --* 
          
            

            - **SocialProviderSettings** *(dict) --* 

              The settings for using social providers to access your Amplify app.

              
              

              - **Facebook** *(dict) --* 

                Describes third-party social federation configurations for allowing your app users to sign in using OAuth.

                
                

                - **ClientId** *(string) --* 

                  Describes the client_id, which can be obtained from the third-party social federation provider.

                  
                

                - **ClientSecret** *(string) --* 

                  Describes the client_secret, which can be obtained from third-party social federation providers.

                  
            
              

              - **Google** *(dict) --* 

                Describes third-party social federation configurations for allowing your app users to sign in using OAuth.

                
                

                - **ClientId** *(string) --* 

                  Describes the client_id, which can be obtained from the third-party social federation provider.

                  
                

                - **ClientSecret** *(string) --* 

                  Describes the client_secret, which can be obtained from third-party social federation providers.

                  
            
              

              - **LoginWithAmazon** *(dict) --* 

                Describes third-party social federation configurations for allowing your app users to sign in using OAuth.

                
                

                - **ClientId** *(string) --* 

                  Describes the client_id, which can be obtained from the third-party social federation provider.

                  
                

                - **ClientSecret** *(string) --* 

                  Describes the client_secret, which can be obtained from third-party social federation providers.

                  
            
              

              - **SignInWithApple** *(dict) --* 

                Describes Apple social federation configurations for allowing your app users to sign in using OAuth.

                
                

                - **ClientId** *(string) --* 

                  Describes the client_id (also called Services ID) that comes from Apple.

                  
                

                - **KeyId** *(string) --* 

                  Describes the key_id that comes from Apple.

                  
                

                - **PrivateKey** *(string) --* 

                  Describes the private_key that comes from Apple.

                  
                

                - **TeamId** *(string) --* 

                  Describes the team_id that comes from Apple.

                  
            
          
        
          

          - **PasswordPolicy** *(dict) --* 

            Describes the password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

            
            

            - **AdditionalConstraints** *(list) --* 

              Additional constraints for the password used to access the backend of your Amplify project.

              
              

              - *(string) --* 
          
            

            - **MinimumLength** *(float) --* 

              The minimum length of the password used to access the backend of your Amplify project.

              
        
          

          - **RequiredSignUpAttributes** *(list) --* 

            The required attributes to sign up new users in the user pool.

            
            

            - *(string) --* 
        
          

          - **SignInMethod** *(string) --* 

            Describes the sign-in methods that your Amplify app users use to log in using the Amazon Cognito user pool, configured as a part of your Amplify project.

            
          

          - **UserPoolName** *(string) --* 

            The Amazon Cognito user pool name.

            
          

          - **VerificationMessage** *(dict) --* 

            Describes the email or SMS verification message for your Amazon Cognito user pool, configured as a part of your Amplify project.

            
            

            - **DeliveryMethod** *(string) --* 

              The type of verification message to send.

              
            

            - **EmailSettings** *(dict) --* 

              The settings for the email message.

              
              

              - **EmailMessage** *(string) --* 

                The contents of the email message.

                
              

              - **EmailSubject** *(string) --* 

                The contents of the subject line of the email message.

                
          
            

            - **SmsSettings** *(dict) --* 

              The settings for the SMS message.

              
              

              - **SmsMessage** *(string) --* 

                The contents of the SMS message.

                
          
        
      
    
      

      - **ResourceName** *(string) --* 

        The name of this resource.

        
  
  **Exceptions**
  
  *   :py:class:`AmplifyBackend.Client.exceptions.NotFoundException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.GatewayTimeoutException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.TooManyRequestsException`

  
  *   :py:class:`AmplifyBackend.Client.exceptions.BadRequestException`

  