:doc:`FMS <../../fms>` / Client / get_protection_status

*********************
get_protection_status
*********************



.. py:method:: FMS.Client.get_protection_status(**kwargs)

  

  If you created a Shield Advanced policy, returns policy-level attack summary information in the event of a potential DDoS attack. Other policy types are currently unsupported.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtectionStatus>`_  


  **Request Syntax**
  ::

    response = client.get_protection_status(
        PolicyId='string',
        MemberAccountId='string',
        StartTime=datetime(2015, 1, 1),
        EndTime=datetime(2015, 1, 1),
        NextToken='string',
        MaxResults=123
    )
    
  :type PolicyId: string
  :param PolicyId: **[REQUIRED]** 

    The ID of the policy for which you want to get the attack information.

    

  
  :type MemberAccountId: string
  :param MemberAccountId: 

    The Amazon Web Services account that is in scope of the policy that you want to get the details for.

    

  
  :type StartTime: datetime
  :param StartTime: 

    The start of the time period to query for the attacks. This is a ``timestamp`` type. The request syntax listing indicates a ``number`` type because the default used by Firewall Manager is Unix time in seconds. However, any valid ``timestamp`` format is allowed.

    

  
  :type EndTime: datetime
  :param EndTime: 

    The end of the time period to query for the attacks. This is a ``timestamp`` type. The request syntax listing indicates a ``number`` type because the default used by Firewall Manager is Unix time in seconds. However, any valid ``timestamp`` format is allowed.

    

  
  :type NextToken: string
  :param NextToken: 

    If you specify a value for ``MaxResults`` and you have more objects than the number that you specify for ``MaxResults``, Firewall Manager returns a ``NextToken`` value in the response, which you can use to retrieve another group of objects. For the second and subsequent ``GetProtectionStatus`` requests, specify the value of ``NextToken`` from the previous response to get information about another batch of objects.

    

  
  :type MaxResults: integer
  :param MaxResults: 

    Specifies the number of objects that you want Firewall Manager to return for this request. If you have more objects than the number that you specify for ``MaxResults``, the response includes a ``NextToken`` value that you can use to get another batch of objects.

    

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

    
    ::

      {
          'AdminAccountId': 'string',
          'ServiceType': 'WAF'|'WAFV2'|'SHIELD_ADVANCED'|'SECURITY_GROUPS_COMMON'|'SECURITY_GROUPS_CONTENT_AUDIT'|'SECURITY_GROUPS_USAGE_AUDIT'|'NETWORK_FIREWALL'|'DNS_FIREWALL'|'THIRD_PARTY_FIREWALL'|'IMPORT_NETWORK_FIREWALL'|'NETWORK_ACL_COMMON',
          'Data': 'string',
          'NextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **AdminAccountId** *(string) --* 

        The ID of the Firewall Manager administrator account for this policy.

        
      

      - **ServiceType** *(string) --* 

        The service type that is protected by the policy. Currently, this is always ``SHIELD_ADVANCED``.

        
      

      - **Data** *(string) --* 

        Details about the attack, including the following:

         

        
        * Attack type
         
        * Account ID
         
        * ARN of the resource attacked
         
        * Start time of the attack
         
        * End time of the attack (ongoing attacks will not have an end time)
        

         

        The details are in JSON format.

        
      

      - **NextToken** *(string) --* 

        If you have more objects than the number that you specified for ``MaxResults`` in the request, the response includes a ``NextToken`` value. To list more objects, submit another ``GetProtectionStatus`` request, and specify the ``NextToken`` value from the response in the ``NextToken`` value in the next request.

         

        Amazon Web Services SDKs provide auto-pagination that identify ``NextToken`` in a response and make subsequent request calls automatically on your behalf. However, this feature is not supported by ``GetProtectionStatus``. You must submit subsequent requests with ``NextToken`` using your own processes.

        
  
  **Exceptions**
  
  *   :py:class:`FMS.Client.exceptions.InvalidInputException`

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

  
  *   :py:class:`FMS.Client.exceptions.InternalErrorException`

  