Novao HubDocs
Dashboard

30-day returns

Pay securely with card, wallet or in three interest-free instalments. Not sure about the size? Our fit guide and live chat help you choose.

6 min read Updated Nov 6, 2025 v2.4.8

Overview

Every piece is made in small batches from materials we test ourselves. We listen first, then build a plan around what you actually need. We keep things simple, so you can focus on what matters to you. Each product is checked by hand before it goes into the box.

Installation

Install the SDK with the package manager your project already uses. It needs Node 18 or newer.

terminal
$ npm install @novao-hub/sdk
terminal
$ yarn add @novao-hub/sdk
terminal
$ pnpm add @novao-hub/sdk
Using a server without Node? The same endpoints are available over plain HTTPS; see the API reference below.

Configuration

Our packaging is plastic-free and every delivery is carbon-neutral. Members get early access to new drops and prices only they can see. Create a file named novao-hub.config.json in the project root:

novao-hub.config.json
{
  "project": "novao-hub",
  "region": "ap-south",
  "categories": ["apparel", "home", "accessories"],
  "retries": 3,
  "timeoutMs": 12000,
  "webhooks": { "enabled": true }
}
OptionTypeDefaultDescription
projectstring-Your project key from the dashboard.
regionstring"us-east"Data centre closest to your shoppers.
retriesnumber3How often a failed call is retried.
timeoutMsnumber10000Time before a request is cancelled.
webhooks.enabledbooleanfalseSend events to your endpoint.

Your first request

Every detail is handled by people who care about getting it right.

  1. Create an API keyOpen the dashboard, choose Settings › API keys and copy a new secret key.
  2. Store it safelyKeep the key in an environment variable, never in your source code.
  3. Make the callRun the snippet below; it prints the first page of results.
index.js
import { Client } from "@novao-hub/sdk";

const client = new Client({ apiKey: process.env.API_KEY });

// list the newest products in one category
const page = await client.products.list({ category: "apparel", limit: 20 });

for (const item of page.data) {
  console.log(item.name, item.price);
}
Heads up: test keys only return sample data. Switch to a live key before you go to production.

API reference

Every endpoint returns JSON and uses standard HTTP status codes.

GET/v1/productsList products with paging and filters.
POST/v1/productsCreate a new product.
PATCH/v1/products/{id}Update some fields of a product.
DELETE/v1/products/{id}Archive a product; it can be restored for 30 days.
response.json
{
  "data": [
    { "id": "product_8803", "name": "Canvas tote", "price": 159 }
  ],
  "has_more": true
}

Troubleshooting

We work directly with makers, so prices stay fair for everyone. Pay securely with card, wallet or in three interest-free instalments.

We listen first, then build a plan around what you actually need. New pieces arrive every month, and the best ones sell out fast.

We keep things simple, so you can focus on what matters to you. Thousands of shoppers already trust us, and we work hard to keep it that way.

Next steps

Each product is checked by hand before it goes into the box.

Was this page helpful?
All screens