Skip to main content

Quickstart

Use this quickstart to verify that your tenant integration is configured correctly.
1

Prepare prerequisites

You need:
  • a Connected App client id and secret
  • a backend route that mints Embed Tokens
  • a frontend page where you can mount the SDK container
2

Load the SDK container

Add the loader script and mount point in your application page.
<div id="nsdk-container" data-nsdk="true" data-nsdk-widget="insights"></div>
<script>
  (function (w, d, s, u, n) {
    w[n] = w[n] || function () { (w[n].q = w[n].q || []).push(arguments) }
    var js = d.createElement(s); js.async = true; js.src = u
    d.head.appendChild(js)
  })(window, document, 'script', '<NSDK_BASE_URL>/nsdk-loader.js', 'NSDK')
</script>
3

Set an Embed Token

Fetch a short-lived token from your backend and pass it to the SDK container.
const { embed_token } = await fetch('/your-embed-token-endpoint').then((r) => r.json())
document.getElementById('nsdk-container')?.setAttribute('data-nsdk-token', embed_token)
4

Validate auth and API health

Test authentication and one endpoint per product surface.
curl -X POST "<NSDK_API_BASE_URL>/api/auth/refresh" \
  -H "Content-Type: application/json" \
  -d '{"refreshToken":"<refresh-jwt>"}'

curl "<NSDK_API_BASE_URL>/api/coach/bootstrap" -H "Authorization: Bearer <access-jwt>"
curl "<NSDK_API_BASE_URL>/api/money/metrics" -H "Authorization: Bearer <access-jwt>"
curl "<NSDK_API_BASE_URL>/api/growth/opps" -H "Authorization: Bearer <access-jwt>"
If the container renders and all API checks return 2xx, your baseline integration is ready.

Next