NodukanNodukan/ Developers
API Reference

Account

Retrieve your Nodukan account profile, active subscription, and KYC verification status via the Account API.

Account API

The Account API lets you read profile information, check subscription status, and inspect KYC (Know Your Customer) verification state for the authenticated creator account.

Endpoints#

MethodPathScopeDescription
GET/accountaccount:readGet account profile
GET/account/subscriptionaccount:readGet current subscription details
GET/account/kycaccount:readGet KYC verification status

GET /account#

Returns the authenticated creator's profile.

curl https://api.nodukan.com/v1/account \
  -H "Authorization: Bearer NDK_live_..."
const res = await fetch('https://api.nodukan.com/v1/account', {
  headers: { Authorization: `Bearer ${process.env.NODUKAN_API_KEY}` },
});
const { data } = await res.json();

Response#

{
  "data": {
    "id": "usr_01j9x4km2v",
    "name": "Priya Sharma",
    "email": "[email protected]",
    "username": "priyasharma",
    "avatarUrl": "https://cdn.nodukan.com/avatars/priyasharma.jpg",
    "plan": "pro",
    "timezone": "Asia/Kolkata",
    "storefront": {
      "id": "sf_01j9x...",
      "url": "https://priyasharma.nodukan.com",
      "customDomain": "priya.example.com",
      "isPublished": true
    },
    "createdAt": "2024-08-15T09:00:00Z",
    "updatedAt": "2026-04-20T14:22:00Z"
  },
  "requestId": "req_01j9xabc..."
}

GET /account/subscription#

Returns the creator's active subscription plan, billing period, and feature limits.

curl https://api.nodukan.com/v1/account/subscription \
  -H "Authorization: Bearer NDK_live_..."
const res = await fetch('https://api.nodukan.com/v1/account/subscription', {
  headers: { Authorization: `Bearer ${process.env.NODUKAN_API_KEY}` },
});
const { data } = await res.json();
console.log(data.plan, data.status);

Response#

{
  "data": {
    "plan": "pro",
    "status": "active",
    "billingCycle": "monthly",
    "currentPeriodStart": "2026-05-01T00:00:00Z",
    "currentPeriodEnd": "2026-06-01T00:00:00Z",
    "cancelAtPeriodEnd": false,
    "limits": {
      "leadMagnets": 5,
      "paymentPages": 10,
      "urlShortener": 50,
      "meetings": 50,
      "coupons": 10,
      "lockedContent": 10,
      "contentStudio": 50,
      "automationHub": 20
    },
    "addons": [],
    "commissionRate": 0.08
  },
  "requestId": "req_01j9xabc..."
}

commissionRate is a decimal fraction (0.08 = 8%) representing Nodukan's platform commission on storefront sales.


GET /account/kyc#

Returns the KYC (Know Your Customer) verification status for the creator's account. KYC verification is required to enable payout withdrawals.

curl https://api.nodukan.com/v1/account/kyc \
  -H "Authorization: Bearer NDK_live_..."

Response#

{
  "data": {
    "status": "verified",
    "verifiedAt": "2025-03-10T11:30:00Z",
    "documents": {
      "pan": {
        "status": "approved",
        "submittedAt": "2025-03-08T09:00:00Z"
      },
      "aadhaar": {
        "status": "approved",
        "submittedAt": "2025-03-08T09:05:00Z"
      },
      "gst": {
        "status": "not_submitted"
      }
    },
    "payoutsEnabled": true,
    "payoutsMethods": ["upi", "bank_transfer"]
  },
  "requestId": "req_01j9xabc..."
}

KYC status values#

statusMeaning
not_startedCreator hasn't initiated KYC
pendingDocuments submitted, awaiting review
verifiedKYC approved โ€” payouts enabled
rejectedKYC failed โ€” creator must resubmit
expiredVerified KYC has lapsed and needs renewal
Note:

The KYC API is read-only. KYC document submission is done through the Nodukan dashboard, not the API.

Was this helpful?
Edit on GitHub

Last updated