Get public app details

There are several methods in JS API created specifically for public applications.

Ecwid.getAppPublicToken('client_id')

This method accepts app client_id as an argument and responds with a public access token for the app. Public tokens are safe to use on the storefront, as they won't be able to reveal any private store data.

Code example:

var publicToken = Ecwid.getAppPublicToken('my-cool-app');
console.log(publicToken);

// prints
// public_qKDUqKkNXzcj9DejkMUqEkYLq2E6BXM9

If you need to make this call on the main Instant Site page, use window.instantsite.getAppPublicToken('client_id'); call instead.

Ecwid.getAppPublicConfig('client_id')

This method accepts app client_id as an argument and responds with a "public config" for the app, which is the data saved in App Storage as a public key. Read more about setting up App Storage.

Code example:

var publicConfig = Ecwid.getAppPublicConfig("client_id");
console.log(publicConfig);

// prints
// {"key": "public","value": "{'color':'red','text':'Email button','border-radius':'3px'}"}

If you need to make this call on the main Instant Site page, use window.instantsite.getAppPublicConfig('client_id'); call instead.

Ecwid.getInitializedWidgets()

This method responds with a list of widgets currently loaded on the website. Full list of widgets:

  • Minicart - Minicart widget

  • SearchPanel - Search widget

  • ProductBrowser - Main storefront widget, contains full Ecwid store

  • Categories - Horizontal categories menu widget

  • Product - Widget with an embedded product page

Code example:

var widgets = Ecwid.getInitializedWidgets();
console.log(widgets);

// prints 
// ["Minicart", "SearchPanel", "ProductBrowser"]

Ecwid.isStorefrontV3()

This method is useful for public applications developed before 2024. It helps apps to adapt their design by detecting the old storefront version.

All stores created in 2024 and later are using the latest storefront without the ability to switch the version.

Code example:

var v3Migration = Ecwid.isStorefrontV3();
console.log(v3Migration);

// prints if enabled
// true

Last updated

Was this helpful?