Skip to main content

What's not supported

This page exists because the previous documentation described features that don't exist in the code. Here we list what is not yet available. If a capability does not appear here and is not documented elsewhere, assume it does not exist and open a ticket with Support before designing your integration around it.

Doesn't exist (today)

Widget npm package

We don't publish @neuroon/widget on npm. The only supported distribution channel is the versioned CDN with SRI:

https://cdn.neuroon.ai/widget@0.9.10/widget.js

There is an internal package.json in the widget/ repository with "name": "@neuroon/widget" and "version": "0.9.10", but it is not published to the public registry. Any guide or blog post that says npm install @neuroon/widget is outdated.

Official SDKs

There are no official clients in PHP, Python, Ruby, Go, Java, or C#. Server-to-server integration is done with any HTTP client (cURL, HttpClient in .NET, requests in Python, axios in Node, etc.) and JSON. The Recipes include copyable examples for each stack.

Outbound webhooks

Neuroon does not send webhooks to your systems yet. In the meantime, if you need to react to quota or catalog events, use polling:

  • GET /api/plugin/shops/me — shop data and quota.
  • GET /api/plugin/shops/{shopId}/products?modifiedAfter=... — modified products.

Outbound webhooks with signature are part of the roadmap (no committed dates).

Imperative search control from JS

The global window.NeuroonWidget API only exposes lifecycle control: init, getInstance, destroy, setTheme, setStyles, plus the token hooks (onTokenExpiring, onTokenRefreshed). No method lets you trigger searches, read results or clear the query — the widget UI is the only way for the user to interact with search.

Public JS callbacks

The only public callbacks are for Widget Token rotation (onTokenExpiring, onTokenRefreshed). There are no public callbacks for search, result-click, filter-change, conversion or error — to react to widget activity from your store, use DOM CustomEvents:

window.addEventListener('neuroon-theme-change', (e) => {
// your logic
});

And to push context to the widget (cart), dispatch:

window.dispatchEvent(new CustomEvent('neuroon:cart-update', {
detail: { items: [{ externalId: 'wc_prod_123', quantity: 2 }] }
}));

HTTP API versioning

There is no /v1/, /v2/, etc. in the routes. We maintain compatibility by contract: breaking changes are announced ahead of time in the Changelog. If you need strict pinning, set the version field in User-Agent headers or run your own contract test against the documented DTOs.

CSV / Excel for the API Plugin sync

POST /api/plugin/shops/{shopId}/products/sync accepts JSON only. File-based loading via CSV/JSON exists but lives under another Dashboard endpoint (human use, not programmatic integration). If you need to import from an ERP that only exports CSV, parse the CSV on your side and send it as JSON to the sync endpoint.

Per-request isolated sandbox

There is no sandbox that isolates data per request. The closest equivalent is our Development environment (dev-api.neuroon.ai), which is a separate environment from Production. See Environments.

Roadmap (no committed dates)

  • Official SDKs (Python, PHP, Node, .NET).
  • Outbound webhooks with signature.
  • Imperative search control from JS (search, clearResults).
  • Public JS search callbacks (onSearch, onResultClick, onError).
  • Explicit API versioning.

When any of these ship, you'll see it marked here as available and referenced in the Changelog.

How to report a missing feature

If you depend on something that doesn't exist, open a ticket via Support describing:

  • Your use case.
  • The workaround you've had to apply in the meantime.
  • Stack (helps prioritize SDKs).