Skip to content

NanoNets/ic-js-sdk

Repository files navigation

NanoNets Image Classification Node.js SDK

The NanoNets Image Classification (IC) Node.js SDK.

NOTE:

  • This package supports both CommonJS and ES Module systems.
  • All API requests from the browser will fail due to CORS policies.
  • API Keys have full access to the user's account. Please do not expose API Keys on the client.
    • Please note that compiling, obfuscating, minifying or bundling (for example in React.js, Angular, Vue.js, React Native, etc.) does not hide the API Key and it can still be extracted from the final application.
    • The API Key should only be known to the server code and all client requests to the API must go through a server.

Installation

npm install @nanonets/image-classification

Use the NanoNets SDK

NOTE: A fully working example using the SDK can be found in the example directory.

  1. Import/require the Image Classification package.
// ES Modules
import ImageClassification from "@nanonets/image-classification";

// CommonJS
const ImageClassification = require("@nanonets/image-classification");
  1. Instantiate the Image Classification (IC) class.
const ic = new ImageClassification(apiKey, modelId);

NOTE:

  • The API Key can be found in the user's NanoNets Account section and Model ID can be found in the model's settings in the NanoNets web app.
  • Models need to be created and trained from the NanoNets web app before being able to make predictions.
  1. Use the Image Classification API to get prediction results from the model(s).

Image Classification API

Table of Contents

Class Instantiation (Constructor)

const ic = new ImageClassification(apiKey, modelId);

Parameters

  • apiKey
    • Type: String
    • Required: True
  • modelId
    • Type: String
    • Required: True

NOTE:

  • Class Instantiation is mandatory.
  • The API Key can be found in the user's NanoNets Account section and Model ID can be found in the model's settings in the NanoNets web app.
  • API Keys have full access to the user's account. Please do not expose API Keys on the client.
    • Please note that compiling, obfuscating, minifying or bundling (for example in React.js, Angular, Vue.js, React Native, etc.) does not hide the API Key and it can still be extracted from the final application.
    • The API Key should only be known to the server code and all client requests to the API must go through a server.

Get Model Details

await ic.getModelDetails();

Response example and other details

The getModelDetails function returns a promise, so it needs to be awaited.

Predict Using URLs

await ic.predictUsingUrls(urlArray);

Parameters

  • urlArray
    • Type: Array of Strings
    • Required: True

Response example and other details

The predictUsingUrls function returns a promise, so it needs to be awaited.

Predict Using File

await ic.predictUsingFile(filePath);

Parameters

  • filePath
    • Type: String
    • Required: True

Response example and other details

The predictUsingFile function returns a promise, so it needs to be awaited.