code: def get_threats_update(self, client_state):
          
          request_body = {
              "client": {
                  "clientId": self.client_id,
                  "clientVersion": self.client_version,
              },
              "listUpdateRequests": [],
          }
          for (threat_type, platform_type, threat_entry_type), current_state in client_state.items():
              request_body['listUpdateRequests'].append(
                  {
                      "threatType": threat_type,
                      "platformType": platform_type,
                      "threatEntryType": threat_entry_type,
                      "state": current_state,
                      "constraints": {
                          "supportedCompressions": ["RAW"]
                      }
                  }
              )
          response = self.service.threatListUpdates().fetch(body=request_body).execute()
          self.set_wait_duration(response.get('minimumWaitDuration'))
          return response['listUpdateResponses']
docs: Fetch hash prefixes update for given threat list.
  
          client_state is a dict which looks like {(threatType, platformType, threatEntryType): clientState}