safe-browse-api-lookup

Provide a simple wrapper for Google's Safe Browsing API v4. See https://developers.google.com/safe-browsing/v4/ for more information.

Usage no npm install needed!

<script type="module">
  import safeBrowseApiLookup from 'https://cdn.skypack.dev/safe-browse-api-lookup';
</script>

README

safe-browse-api-lookup

Build Status

Installation

Using npm: $ npm install safe-browse-api-lookup --save

Using yarn: $ yarn add safe-browse-api-lookup

Example

import SafeBrowseApi from 'safe-browse-api-lookup'

/*
*
* The constructor can take an optional second parameter with your custom settings.
* By default it will be.
* { 
*   baseURL: 'https://safebrowsing.googleapis.com', 
*   client: {"clientId": "safe-browse-url-lookup", "clientVersion": "1.0.0"} 
* }
*/
const safeBrowsing = new SafeBrowseApi(apiKey)

// Check whether a url has been marked by Google Safe Browsing.

/*
* The check function can take a second param (Boolean) to decide whether you want the full response 
* from the api, see https://developers.google.com/safe-browsing/v4.
* The default value false meaning that it will return an array of matches.
*/
await safeBrowsing.check('http://google.com') // This returns ['http://google.com'].

await safeBrowsing.check('http://google.com', true) // Returns:

[
    {
        "threatType": "MALWARE",
        "platformType": "ANY_PLATFORM",
        "threatEntryType": "URL",
        "threat": {
            "url": "https://google.com"
        }
    }
]

await safeBrowsing.getThreatLists() // Returns:
{
  threatLists: [{
      "threatType":      "MALWARE",
      "platformType":    "WINDOWS",
      "threatEntryType": "URL",
  }, {
      "threatType":      "MALWARE",
      "platformType":    "LINUX",
      "threatEntryType": "URL",
  }, {
    ... additional lists will be returned ...
  }]
}