API & SDK Quick Start

Use the Simplio3D API and JavaScript SDK to build fully custom 3D configurator experiences. This guide helps you get started quickly.

Step 1: Generate an API Token

  1. 1Go to Dashboard → Profile → API/SDK tab (requires a Pro or Enterprise plan).
  2. 2Click "Generate API Token".
  3. 3Copy it immediately — the token is hashed on the server and never shown again.
  4. 4Store it securely on your server (environment variables, never in client-side code).
One token per accountEach account has a single API token; it is not nameable, and regenerating replaces the previous one immediately. Regenerate if it is ever exposed.
Never ship the token to end usersThe token authenticates as your account across all of your projects. Anything distributed \u2014 browser JavaScript, a mobile or desktop app \u2014 can be decompiled or proxied, so an embedded token is a published one. Call the API from your own server. For customer-facing apps, see Mobile & Native Apps and Sharing & Embedding.

Step 2: Know which credential to send

There are two credentials and they are not interchangeable. Sending the wrong one is the most common cause of an unexpected 401.

CredentialHeaderReaches
API token (Profile → API/SDK)X-API-KeyOption blocks, pricing blocks, quote submissions and webhooks only.
Access token (Supabase Auth sign-in)Authorization: BearerEvery endpoint your account can use, including reading and writing projects, materials and assets.

Step 3: Make your first call

// Read a project’s option blocks with an API token

const response = await fetch(

'https://your-instance.supabase.co/functions/v1/make-server-0532dd87'

+ '/projects/YOUR_PROJECT_ID/option-blocks',

{ headers: { 'X-API-Key': 'YOUR_API_TOKEN' } }

);

const { blocks } = await response.json();

Step 4: Use the TypeScript SDK

The SDK is a typed client for the same REST API. It reads and writes your project definitions — option blocks, pricing, forms, assets and materials.

// Install

npm install @simplio3d/sdk

// Create a client

import { createSimplio3DClient } from '@simplio3d/sdk';

const client = createSimplio3DClient({

apiUrl: 'https://your-instance.supabase.co/functions/v1/make-server-0532dd87',

accessToken: 'YOUR_ACCESS_TOKEN', // full API surface

// apiToken: 'YOUR_API_TOKEN', // X-API-Key subset (see Step 2)

});

const blocks = await client.getOptionBlocks('YOUR_PROJECT_ID');

The SDK does not render a configuratorIt is a headless REST client — there is no viewer, no 3D canvas and no init(). To put a working configurator on a page or in an app, embed the published share URL (see Sharing & Embedding and Mobile & Native Apps). The SDK is for automating your project data around it.

What You Can Do

Author option blocks

Create, update, reorder, and delete option blocks and their variants from your own code.

Author pricing

Manage pricing blocks and run a price calculation for a given set of selections.

Read submissions

List, update, and delete the quote and contact-form submissions your configurators capture.

Manage webhooks

Register, test, and inspect webhooks so your systems react to configurator activity.

Full Documentation

For complete API endpoint reference and SDK method documentation, visit:

More in Integrations