# Google Safe Browsing API . threatListUpdates

## Instance Methods

Fetches the most recent threat list updates. A client can request updates

### Method Details

`fetch(body, x__xgafv=None)`

    Fetches the most recent threat list updates. A client can request updates
    for multiple lists at once.

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    { # Describes a Safe Browsing API update request. Clients can request updates for
          # multiple lists in a single request.
          # NOTE: Field index 2 is unused.
          # NEXT: 5
        "client": { # The client metadata associated with Safe Browsing API requests. # The client metadata.
          "clientVersion": "A String", # The version of the client implementation.
          "clientId": "A String", # A client ID that (hopefully) uniquely identifies the client implementation
              # of the Safe Browsing API.
        },
        "listUpdateRequests": [ # The requested threat list updates.
          { # A single list update request.
            "threatType": "A String", # The type of threat posed by entries present in the list.
            "state": "A String", # The current state of the client for the requested list (the encrypted
                # client state that was received from the last successful list update).
            "threatEntryType": "A String", # The types of entries present in the list.
            "platformType": "A String", # The type of platform at risk by entries present in the list.
            "constraints": { # The constraints for this update. # The constraints associated with this request.
              "maxDatabaseEntries": 42, # Sets the maximum number of entries that the client is willing to have
                  # in the local database. This should be a power of 2 between 2**10 and
                  # 2**20. If zero, no database size limit is set.
              "region": "A String", # Requests the list for a specific geographic location. If not set the
                  # server may pick that value based on the user's IP address. Expects ISO
                  # 3166-1 alpha-2 format.
              "supportedCompressions": [ # The compression types supported by the client.
                "A String",
              ],
              "maxUpdateEntries": 42, # The maximum size in number of entries. The update will not contain more
                  # entries than this value.  This should be a power of 2 between 2**10 and
                  # 2**20.  If zero, no update size limit is set.
            },
          },
        ],
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        {
        "listUpdateResponses": [ # The list updates requested by the clients.
          { # An update to an individual list.
            "responseType": "A String", # The type of response. This may indicate that an action is required by the
                # client when the response is received.
            "threatType": "A String", # The threat type for which data is returned.
            "removals": [ # A set of entries to remove from a local threat type's list. In practice,
                # this field is empty or contains exactly one ThreatEntrySet.
              { # A set of threats that should be added or removed from a client's local
                  # database.
                "riceHashes": { # The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or # The encoded 4-byte prefixes of SHA256-formatted entries, using a
                    # Golomb-Rice encoding. The hashes are converted to uint32, sorted in
                    # ascending order, then delta encoded and stored as encoded_data.
                    # compressed removal indices.
                  "riceParameter": 42, # The Golomb-Rice parameter, which is a number between 2 and 28. This field
                      # is missing (that is, zero) if `num_entries` is zero.
                  "numEntries": 42, # The number of entries that are delta encoded in the encoded data. If only a
                      # single integer was encoded, this will be zero and the single value will be
                      # stored in `first_value`.
                  "encodedData": "A String", # The encoded deltas that are encoded using the Golomb-Rice coder.
                  "firstValue": "A String", # The offset of the first entry in the encoded data, or, if only a single
                      # integer was encoded, that single integer's value.
                },
                "compressionType": "A String", # The compression type for the entries in this set.
                "rawIndices": { # A set of raw indices to remove from a local list. # The raw removal indices for a local list.
                  "indices": [ # The indices to remove from a lexicographically-sorted local list.
                    42,
                  ],
                },
                "riceIndices": { # The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or # The encoded local, lexicographically-sorted list indices, using a
                    # Golomb-Rice encoding. Used for sending compressed removal indices. The
                    # removal indices (uint32) are sorted in ascending order, then delta encoded
                    # and stored as encoded_data.
                    # compressed removal indices.
                  "riceParameter": 42, # The Golomb-Rice parameter, which is a number between 2 and 28. This field
                      # is missing (that is, zero) if `num_entries` is zero.
                  "numEntries": 42, # The number of entries that are delta encoded in the encoded data. If only a
                      # single integer was encoded, this will be zero and the single value will be
                      # stored in `first_value`.
                  "encodedData": "A String", # The encoded deltas that are encoded using the Golomb-Rice coder.
                  "firstValue": "A String", # The offset of the first entry in the encoded data, or, if only a single
                      # integer was encoded, that single integer's value.
                },
                "rawHashes": { # The uncompressed threat entries in hash format of a particular prefix length. # The raw SHA256-formatted entries.
                    # Hashes can be anywhere from 4 to 32 bytes in size. A large majority are 4
                    # bytes, but some hashes are lengthened if they collide with the hash of a
                    # popular URL.
                    #
                    # Used for sending ThreatEntrySet to clients that do not support compression,
                    # or when sending non-4-byte hashes to clients that do support compression.
                  "prefixSize": 42, # The number of bytes for each prefix encoded below.  This field can be
                      # anywhere from 4 (shortest prefix) to 32 (full SHA256 hash).
                  "rawHashes": "A String", # The hashes, in binary format, concatenated into one long string. Hashes are
                      # sorted in lexicographic order. For JSON API users, hashes are
                      # base64-encoded.
                },
              },
            ],
            "newClientState": "A String", # The new client state, in encrypted format. Opaque to clients.
            "checksum": { # The expected state of a client's local database. # The expected SHA256 hash of the client state; that is, of the sorted list
                # of all hashes present in the database after applying the provided update.
                # If the client state doesn't match the expected state, the client must
                # disregard this update and retry later.
              "sha256": "A String", # The SHA256 hash of the client state; that is, of the sorted list of all
                  # hashes present in the database.
            },
            "threatEntryType": "A String", # The format of the threats.
            "additions": [ # A set of entries to add to a local threat type's list. Repeated to allow
                # for a combination of compressed and raw data to be sent in a single
                # response.
              { # A set of threats that should be added or removed from a client's local
                  # database.
                "riceHashes": { # The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or # The encoded 4-byte prefixes of SHA256-formatted entries, using a
                    # Golomb-Rice encoding. The hashes are converted to uint32, sorted in
                    # ascending order, then delta encoded and stored as encoded_data.
                    # compressed removal indices.
                  "riceParameter": 42, # The Golomb-Rice parameter, which is a number between 2 and 28. This field
                      # is missing (that is, zero) if `num_entries` is zero.
                  "numEntries": 42, # The number of entries that are delta encoded in the encoded data. If only a
                      # single integer was encoded, this will be zero and the single value will be
                      # stored in `first_value`.
                  "encodedData": "A String", # The encoded deltas that are encoded using the Golomb-Rice coder.
                  "firstValue": "A String", # The offset of the first entry in the encoded data, or, if only a single
                      # integer was encoded, that single integer's value.
                },
                "compressionType": "A String", # The compression type for the entries in this set.
                "rawIndices": { # A set of raw indices to remove from a local list. # The raw removal indices for a local list.
                  "indices": [ # The indices to remove from a lexicographically-sorted local list.
                    42,
                  ],
                },
                "riceIndices": { # The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or # The encoded local, lexicographically-sorted list indices, using a
                    # Golomb-Rice encoding. Used for sending compressed removal indices. The
                    # removal indices (uint32) are sorted in ascending order, then delta encoded
                    # and stored as encoded_data.
                    # compressed removal indices.
                  "riceParameter": 42, # The Golomb-Rice parameter, which is a number between 2 and 28. This field
                      # is missing (that is, zero) if `num_entries` is zero.
                  "numEntries": 42, # The number of entries that are delta encoded in the encoded data. If only a
                      # single integer was encoded, this will be zero and the single value will be
                      # stored in `first_value`.
                  "encodedData": "A String", # The encoded deltas that are encoded using the Golomb-Rice coder.
                  "firstValue": "A String", # The offset of the first entry in the encoded data, or, if only a single
                      # integer was encoded, that single integer's value.
                },
                "rawHashes": { # The uncompressed threat entries in hash format of a particular prefix length. # The raw SHA256-formatted entries.
                    # Hashes can be anywhere from 4 to 32 bytes in size. A large majority are 4
                    # bytes, but some hashes are lengthened if they collide with the hash of a
                    # popular URL.
                    #
                    # Used for sending ThreatEntrySet to clients that do not support compression,
                    # or when sending non-4-byte hashes to clients that do support compression.
                  "prefixSize": 42, # The number of bytes for each prefix encoded below.  This field can be
                      # anywhere from 4 (shortest prefix) to 32 (full SHA256 hash).
                  "rawHashes": "A String", # The hashes, in binary format, concatenated into one long string. Hashes are
                      # sorted in lexicographic order. For JSON API users, hashes are
                      # base64-encoded.
                },
              },
            ],
            "platformType": "A String", # The platform type for which data is returned.
          },
        ],
        "minimumWaitDuration": "A String", # The minimum duration the client must wait before issuing any update
            # request. If this field is not set clients may update as soon as they want.
      }