0.0.9 • Published 7 months ago

@dtect/security-sdk-js v0.0.9

Weekly downloads
-
License
MIT
Repository
-
Last release
7 months ago

Security API Javascript SDK

Security API Javascript SDK by dtect.

Getting Started

The dtect Security API helps you gather valuable insights about your visitors, enhancing the quality of your survey data. This library is responsible for collecting data about the visitor's browser and behavior, send everything to our API and return a Security Result or a Security Token.

Please refer to our official documentation to learn more about the dtect Security API

If you want to use our API, please contact us

Installation

Install package

npm install @dtect/security-sdk-js

or

yarn add @dtect/security-sdk-js

or CDN

NPM Implementation

Read full documentation about implementation on our official docs

1. Start initialize security sdk by calling init function.

  • Set your public client id as clientId
  • Set your public api key as apiKey
import dtect from "@dtect/security-sdk-js";

dtect.init({
  clientId: "your-public-client-id-from-dashboard", // required
  apiKey: "your-public-api-key-from-dashboard", // required
});
PropTypeDescription
clientIdstringRequired. public client id
apiKeystringRequired. public api key

2. Use getSecurityResult or getSecurityToken function to check for visitor data

We recommend you to get securityToken from getSecurityToken then consult securityResult.

import dtect from "@dtect/security-sdk-js";

// after init
dtect
  .getSecurityToken({
    projectId: "your-project-id-for-deduplication", // required
  })
  .then((token) => console.log(token));

dtect
  .getSecurityResult({
    projectId: "your-project-id-for-deduplication", // required
    securitySettings: {
      countriesAllowed: ["can"], // only visitors from Canada is allowed
    },
  })
  .then((result) => console.log(result));
PropTypeDescription
projectIdstringRequired. A unique identifier for your project, study or survey. It allows our system to group visitor data and identify duplicates
visitorIdstringId to identify the visitor that is being evaluated
metaDataobjectAny additional information you want to add to each request
securitySettingsobjectConfigures security settings. Includes countriesAllowed
countriesAllowedstring[]List of countries allowed for your project, survey, or study.

CDN Implementation

<script>
  const dtectPromise = import(
    "https://unpkg.com/@dtect/security-sdk-js@latest/dist/index.mjs"
  ).then((dtect) =>
    dtect.init({
      clientId: "your-public-client-id-from-dashboard", // required
      apiKey: "your-public-api-key-from-dashboard", // required
    })
  );

  // Use getSecurityToken
  dtectPromise.then((dtect) =>
    dtect
      .getSecurityToken({
        projectId: "your-project-id-for-deduplication", // required
      })
      .then((token) => console.log(token))
  );

  // or use getSecurityResult
  dtectPromise.then((dtect) =>
    dtect
      .getSecurityResult({
        projectId: "your-project-id-for-deduplication", // required
      })
      .then((securityResult) => console.log(securityResult))
  );
</script>

Errors

Read full documentation about errors on our official docs

Access the list of error enums from SecurityAPIError

init()

You will see these errors on console

EnumMessageDescription
MISSING_CREDENTIALSMissing Public Client ID or Public API KeyPlease provide valid Public Client ID and Public API Key when initializing our package.
INVALID_CREDENTIALSInvalid Public Client ID or Public API KeyEnsure you are using valid Public Client ID and Public API Key.
SDK_INIT_ERRORInternal Server Error during SDK InitializationAn unexpected error occurred on our servers during SDK initialization.
DUPLICATE_INITIALIZATIONMultiple SDK Initializations DetectedYou should initialize our package only once.
MAINTENANCE_MODEAPI Under MaintenanceThe API is currently undergoing maintenance and will be available again shortly.

getSecurityToken()/getSecurityResult()

ErrorMessageDescription
NOT_INITIALIZEDSDK Not InitializedThe SDK must be initialized before calling this function.
INTERNAL_SERVER_ERRORInternal Server Error during API RequestAn unexpected error occurred on our servers during the API request. Check server logs for details.
FAILED_TO_GET_SECURITY_TOKENFailed to Generate Security TokenAn error occurred while generating the Security Token.
FAILED_TO_GET_SECURITY_RESULTFailed to Retrieve Security ResultAn error occurred while retrieving the Security Result.
MAINTENANCE_MODEAPI Under MaintenanceThe API is currently undergoing maintenance and will be available again shortly.
                                      |

NPM implementation with errors

import dtect, { SecurityAPIError } from "@dtect/security-sdk-js";

// after init
dtect
  .getSecurityToken({
    projectId: "your-project-id-for-deduplication", // required
  })
  .then((token) => console.log(token))
  .catch((error) => {
    switch (error.message) {
      case SecurityAPIError.FAILED_TO_GET_SECURITY_TOKEN:
      // log internally
    }
  });

CDN implementation with errors

<script>
  dtectPromise.then((dtect) =>
    dtect
      .getSecurityResult({
        projectId: "your-project-id-for-deduplication", // required
      })
      .then((securityResult) => console.log(securityResult))
      .catch((error) => {
        switch(error.message) {
          case dtect.SecurityAPIError.FAILED_TO_GET_SECURITY_RESULT:
            // log internally
        }
      })
  );
</script>

Contact

dtect - Contact us - support@dtect.io

0.0.9

7 months ago

0.0.8

8 months ago

0.0.7

11 months ago

0.0.6

11 months ago

0.0.5

11 months ago

0.0.4

11 months ago

0.0.3

11 months ago

0.0.2

11 months ago

0.0.1

11 months ago